# HG changeset patch # User kvn # Date 1337800285 25200 # Node ID bf14ed159fb0966b1f2cfe7f568e0c71d0f9276c # Parent 84e198dc24742a237f31c60fc01efe93f7b5c5d3 7158801: Improve VM CompileOnly option Summary: Fixed buffer overflow during parsing flags -XX:CompileCommand=, -XX:CompileOnly= and command lines in .hotspot_compiler file. Reviewed-by: never diff -r 84e198dc2474 -r bf14ed159fb0 src/share/vm/compiler/compilerOracle.cpp --- a/src/share/vm/compiler/compilerOracle.cpp Mon May 21 14:56:33 2012 -0700 +++ b/src/share/vm/compiler/compilerOracle.cpp Wed May 23 12:11:25 2012 -0700 @@ -572,7 +572,7 @@ char token[1024]; int pos = 0; int c = getc(stream); - while(c != EOF) { + while(c != EOF && pos < (sizeof(token)-1)) { if (c == '\n') { token[pos++] = '\0'; parse_from_line(token); @@ -593,7 +593,7 @@ int pos = 0; const char* sp = str; int c = *sp++; - while (c != '\0') { + while (c != '\0' && pos < (sizeof(token)-1)) { if (c == '\n') { token[pos++] = '\0'; parse_line(token);