Skip to content

v3dv: check dest bitsize in color blit

Juan A. Suárez requested to merge jasuarez/mesa:review/v3dv-bad-shift into master

Otherwise, if src_bit_size > 0 and dst_bit_size == 0, we end up doing a bad shift in 1 << (dst_bit_size - 1), as dst_bit_size - 1 is a negative value (in this case would be MAX_UINT32).

Fixes CID#1468134 "Bad bit shift operation (BAD_SHIFT)": "large_shift: In expression 1 << dst_bit_size - 1U, left shifting by more than 31 bits has undefined behavior. The shift amount, dst_bit_size - 1U, is 4294967295."

Merge request reports