8157097: OptionsValidation/TestOptionsWithRanges.java crashes at CompactHashtableWriter::add during StringTable::copy_shared_string

Reviewed-by: dholmes, jiangli
This commit is contained in:
Robbin Ehn 2016-05-23 09:57:17 +02:00
parent 2096e37c4e
commit 4154a35318
2 changed files with 3 additions and 1 deletions

View file

@ -740,7 +740,8 @@ void StringTable::serialize(SerializeClosure* soc, GrowableArray<MemRegion> *str
} else {
int num_buckets = the_table()->number_of_entries() /
SharedSymbolTableBucketSize;
CompactStringTableWriter writer(num_buckets,
// calculation of num_buckets can result in zero buckets, we need at least one
CompactStringTableWriter writer(num_buckets > 1 ? num_buckets : 1,
&MetaspaceShared::stats()->string);
// Copy the interned strings into the "string space" within the java heap