RFR: 8254270: linux 32 bit build doesn't compile libjdwp/log_messages.c [v4]

Thomas Stuefe stuefe at openjdk.java.net
Fri Nov 6 12:08:00 UTC 2020


On Fri, 6 Nov 2020 12:02:28 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:

>> src/jdk.jdwp.agent/share/native/libjdwp/log_messages.c line 84:
>> 
>>> 82:     // Truncate milliseconds in buffer large enough to hold the
>>> 83:     // value which is always < 1000 (and so a maximum of 3 digits for "%.3s")
>>> 84:     char tmp[10 + 1];
>> 
>> I was wrong yesterday. Max len of %d would be 11 chars (if INT_MIN). Can you make this buffer 11 chars please? 
>> 
>> (This error would have had no practical consequence: tmp[] would be filled to the brim, leaving out the terminating zero, and since we then print with %.3s, this would have had no negative effect. But its still better to plan for \0 explicitly)
>
>> INT_MIN = "-2147483647" = 11
> If millisecs is unsigned do we not  have to account for the minus sign?
> 
> Why can't tmp just be 20 and we don't have to count characters since snprintf will null terminate it?

Sure, thats fine too!

-------------

PR: https://git.openjdk.java.net/jdk/pull/1067


More information about the serviceability-dev mailing list