Mercurial > hg > truffle
diff src/share/vm/utilities/ostream.cpp @ 11136:dbc0b5dc08f5
7143807: ResourceMark nesting problem in stringStream
Reviewed-by: kvn, dcubed
author | fparain |
---|---|
date | Wed, 10 Jul 2013 15:49:15 +0000 |
parents | 0598674c0056 |
children | 6b0fd0964b87 621eda7235d2 01b268b3080a bdd155477289 |
line wrap: on
line diff
--- a/src/share/vm/utilities/ostream.cpp Tue Jul 09 22:48:52 2013 +0200 +++ b/src/share/vm/utilities/ostream.cpp Wed Jul 10 15:49:15 2013 +0000 @@ -296,6 +296,7 @@ buffer = NEW_RESOURCE_ARRAY(char, buffer_length); buffer_pos = 0; buffer_fixed = false; + DEBUG_ONLY(rm = Thread::current()->current_resource_mark();) } // useful for output to fixed chunks of memory, such as performance counters @@ -321,6 +322,8 @@ end = buffer_length * 2; } char* oldbuf = buffer; + assert(rm == NULL || Thread::current()->current_resource_mark() == rm, + "stringStream is re-allocated with a different ResourceMark"); buffer = NEW_RESOURCE_ARRAY(char, end); strncpy(buffer, oldbuf, buffer_pos); buffer_length = end;