Skip to content

Commit 8fe8828

Browse files
committed
A couple memory profiler fixes
* Fix crash in mono_unity_type_get_name_foreach_name_chunk_recurse that was due to an upstream change that made null checking mono_generic_param_info's result no longer valid * Bring fix made in unity-master forward in mono_mempool_foreach_block
1 parent 9d7b50c commit 8fe8828

File tree

2 files changed

+4
-5
lines changed

2 files changed

+4
-5
lines changed

mono/metadata/mempool.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -428,10 +428,9 @@ mono_mempool_foreach_block(MonoMemPool* pool, mono_mempool_block_proc callback,
428428

429429
while (current)
430430
{
431-
gpointer start = (guint8*)current + SIZEOF_MEM_POOL;
432-
gpointer end = (guint8*)start + current->size;
431+
gpointer end = (guint8*)current + current->size;
433432

434-
callback(start, end, user_data);
433+
callback(current, end, user_data);
435434
current = current->next;
436435
}
437436
}

mono/metadata/unity-utils.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1676,7 +1676,7 @@ mono_unity_type_get_name_foreach_name_chunk_recurse(MonoType *type, gboolean is_
16761676
}
16771677
case MONO_TYPE_VAR:
16781678
case MONO_TYPE_MVAR:
1679-
if (!mono_generic_param_info(type->data.generic_param)) {
1679+
if (!mono_generic_param_name(type->data.generic_param)) {
16801680

16811681
if (type->type == MONO_TYPE_VAR) {
16821682
*bufferIter++ = '!';
@@ -1688,7 +1688,7 @@ mono_unity_type_get_name_foreach_name_chunk_recurse(MonoType *type, gboolean is_
16881688
sprintf(bufferIter, "%d", type->data.generic_param->num);
16891689
}
16901690
else
1691-
nameChunkReport(mono_generic_param_info(type->data.generic_param)->name, userData);
1691+
nameChunkReport(mono_generic_param_name(type->data.generic_param), userData);
16921692

16931693
if (type->byref)
16941694
*bufferIter++ = '&';

0 commit comments

Comments
 (0)