convolutionFilterValidateParams() derives w/h from client-supplied
xFixed values via the sign-extending xFixedToInt(), then checked
'w * h > nparams' as a plain (signed) int product. A client can choose
negative w/h so the mathematical product is huge but the signed int
product wraps to a small or negative value, defeating the bounds check
that is supposed to reject a convolution kernel larger than the actual
parameter list.
Reject negative w/h outright and compare the product as int64_t so it
cannot wrap before the comparison.
Signed-off-by: Enrico Weigelt, metux IT consult <enrico.weigelt@vnc.biz>