Mercurial > hg > graal-compiler
comparison src/share/vm/services/memBaseline.cpp @ 10975:ab313d4e9a8b
8011968: Kitchensink crashed with SIGSEGV in MemBaseline::baseline
Summary: Simple fix to add NULL pointer check that can cause segv
Reviewed-by: coleenp, ctornqvi
author | zgu |
---|---|
date | Fri, 14 Jun 2013 09:18:42 -0400 |
parents | f2110083203d |
children | 72fce0b2d341 |
comparison
equal
deleted
inserted
replaced
10969:a837fa3d3f86 | 10975:ab313d4e9a8b |
---|---|
128 _total_malloced += size; | 128 _total_malloced += size; |
129 _malloc_data[index].inc(size); | 129 _malloc_data[index].inc(size); |
130 if (malloc_ptr->is_arena_record()) { | 130 if (malloc_ptr->is_arena_record()) { |
131 // see if arena memory record present | 131 // see if arena memory record present |
132 MemPointerRecord* next_malloc_ptr = (MemPointerRecordEx*)malloc_itr.peek_next(); | 132 MemPointerRecord* next_malloc_ptr = (MemPointerRecordEx*)malloc_itr.peek_next(); |
133 if (next_malloc_ptr->is_arena_memory_record()) { | 133 if (next_malloc_ptr != NULL && next_malloc_ptr->is_arena_memory_record()) { |
134 assert(next_malloc_ptr->is_memory_record_of_arena(malloc_ptr), | 134 assert(next_malloc_ptr->is_memory_record_of_arena(malloc_ptr), |
135 "Arena records do not match"); | 135 "Arena records do not match"); |
136 size = next_malloc_ptr->size(); | 136 size = next_malloc_ptr->size(); |
137 _arena_data[index].inc(size); | 137 _arena_data[index].inc(size); |
138 used_arena_size += size; | 138 used_arena_size += size; |