Mercurial > hg > truffle
diff src/share/vm/runtime/vmStructs.cpp @ 7584:c1c8479222cd
8005921: Memory leaks in vmStructs.cpp
Reviewed-by: dholmes, mikael, rasbold
Contributed-by: Jeremy Manson <jeremymanson@google.com>
author | dholmes |
---|---|
date | Thu, 10 Jan 2013 21:00:11 -0500 |
parents | 91bf7da5c609 |
children | 4a916f2ce331 |
line wrap: on
line diff
--- a/src/share/vm/runtime/vmStructs.cpp Thu Jan 10 17:06:26 2013 -0800 +++ b/src/share/vm/runtime/vmStructs.cpp Thu Jan 10 21:00:11 2013 -0500 @@ -3112,10 +3112,10 @@ s[len-1] = '\0'; // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); if (recursiveFindType(origtypes, s, true) == 1) { - delete s; + delete [] s; return 1; } - delete s; + delete [] s; } const char* start = NULL; if (strstr(typeName, "GrowableArray<") == typeName) { @@ -3131,10 +3131,10 @@ s[len-1] = '\0'; // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); if (recursiveFindType(origtypes, s, true) == 1) { - delete s; + delete [] s; return 1; } - delete s; + delete [] s; } if (strstr(typeName, "const ") == typeName) { const char * s = typeName + strlen("const "); @@ -3148,8 +3148,10 @@ s[len - 6] = '\0'; // tty->print_cr("checking \"%s\" for \"%s\"", s, typeName); if (recursiveFindType(origtypes, s, true) == 1) { + free(s); return 1; } + free(s); } if (!isRecurse) { tty->print_cr("type \"%s\" not found", typeName);