Buffer Underrun: In src/main/edu/nps/moves/dis/SignalPdu.java the unmarshal call is incorrectly interpreting "dataLength" as a byte value instead of a bit value, and thus attempting to unmarshal 8x too many one-byte-chunks.
In order to fix the code the for loop was changed to:
for(int idx = 0; idx < dataLength; idx += 8)
Suggested changes would be either dataLength = dis.readShort() / 8; or the for loop changed as above.
Update: This problem also exists in the Other Unmarshal call as well as in the marshal call.
I submitted this way back when. Is there no plan to fix this?
I agree the field is a bit value. In the C# code the array was handled correctly. Problem only exists in the Java version.
Does anybody actually update or even work on this code any longer???
Is this going to be fixed???