-
Bug
-
Resolution: Done
-
Major
-
None
-
None
-
None
-
Workaround Exists
At some points of NioTcpServer, the bitwise shift operations (<< and >>) are being performed against partial numbers, as the higher precedence of <</>> over other bitwise operations (XOR, OR, and AND) is being ignored. For example:
a & b >> c
Should be instead:
(a & b) >> c
Or else the piece of code above would read as
a & (b >> c)
An example of where this occurs is the getHighWater(long) method:
private static int getHighWater(final long value)
The correct is:
private static int getHighWater(final long value)
All the points of NioTcpServer that use the shift operators should be reviewed, and fixed whenever needed.