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;