`VC5Decompressor::Wavelet::HighPassBand::decode()`: sanitize dequantization...
`VC5Decompressor::Wavelet::HighPassBand::decode()`: sanitize dequantization...

To put it mildly, i don't like this.

The problem is, we don't have any bounds on the `quant`,
which we read from the raw, by which we then multiply the decompanded
RLV values (taken from hardcoded table). And expect that the result
is a signed 16-bit integer. But the largest decompanded value is 1023,
so the largest quantum for *that* value that does not result in overflow
is 32, yet quantum of 144 is used in RPU samples.

Which means, we either need to go to 32-bit int's,
which seems rather suboptimal from memory footprint view,
and isn't really going to address the problem,
or do this - check that the multiplication does not overflow.

:/

Performance-wise, it is hard to tell. I've measured,
but given how fast this decompressor is nowadays,
the difference appears to be around the noise floor.

darktable-org/rawspeed,darktable-org/rawspeed,LebedevRI/rawspeed,darktable-org/rawspeed,LebedevRI/rawspeed,LebedevRI/rawspeed,LebedevRI/rawspeed,darktable-org/rawspeed,darktable-org/rawspeed,LebedevRI/rawspeed