We were doing (255 << 24) which causes integer overflow and positive number gets converted to negative number. We were then assigning this to an unsigned integer in multiple places, which does conversion in a different way.
For example: If we do unsigned int x = -20, UINT_MAX + 1 - 20 is assigned to x.
I do not think that's what is intended when we do
ktrans = (255 << 24). Fix instances of that, by using an unsigned int literal over int literal.
This is similar to https://github.com/OSGeo/grass/pull/4635.
We were doing
(255 << 24)
which causes integer overflow and positive number gets converted to negative number. We were then assigning this to an unsigned integer in multiple places, which does conversion in a different way.For example: If we do unsigned int x = -20,
UINT_MAX + 1 - 20
is assigned to x.I do not think that's what is intended when we do
ktrans = (255 << 24)
. Fix instances of that, by using an unsigned int literal over int literal.This issue was found using cppcheck tool.