Hi Christoph,

This looks good.
Please, do not forget to run the jtreg jdk/com/sun/jdi tests for fixes in the debugger agent library.

Thanks,
Serguei


On 12/8/17 05:48, Langer, Christoph wrote:

Hi,

 

this is a new webrev for 8192978. This change now only contains the coverity fixes.

 

In detail:
src/jdk.jdwp.agent/share/native/libjdwp/VirtualMachineImpl.c, static void writePaths(PacketOutputStream *out, char *string):
    strchr could be called with NULL argument because of assignment pos = psPos; in line 856 (last line of for loop). Proposal: check pos for NULL in head of for loop

 src/jdk.jdwp.agent/share/native/libjdwp/error_messages.c, static void vprint_message(FILE *fp, const char *prefix, const char *suffix, const char *format, va_list ap):
    potentially unterminated vsnprintf call. Proposal: terminate

src/jdk.jdwp.agent/share/native/libjdwp/eventHandler.c, static jboolean synthesizeUnloadEvent(void *signatureVoid, void *envVoid):
    checking eventBag for NULL and then calling JDI_ASSERT only in that case is a bit dubious.

    It leads the coverity code scan tool to think that eventBag might be NULL when eventHelper_recordClassUnload is called

    which would eventually try to dereference a NULL eventbag and hence crash.

    Proposal: remove the NULL check but unconditionally assert.

 

    This is the real fix for the changes in eventHelper.c in my former webrev.


src/jdk.jdwp.agent/share/native/libjdwp/log_messages.c, void log_message_end(const char *format, ...):
    potentially unterminated vsnprintf call. Proposal: terminate

 

Furthermore I have 2 whitespace changes which I’d like to see because they would help me reducing the diff to our codebase and, furthermore, make the code looking nicer… a little ;-)

 

Webrev: http://cr.openjdk.java.net/~clanger/webrevs/8192978.2/

Bug: https://bugs.openjdk.java.net/browse/JDK-8192978

 

I’m doing builds on the main platform and running jtreg tests.

 

Thanks in advance & Best regards

Christoph

 


Reply via email to