Alun Williams pointed out that
if you pass invalid parameters to DeferWindowPos,
it does not destroy the HDWP.
Well, yeah, because if you pass invalid parameters,
all bets are off.
Different functions perform different degrees of parameter
validation; the degree to which this is done is typically
guided by security concerns.