Skip to content

Commit 403fd74

Browse files
committed
fix an issue with adding generic param numbers
added null termination to the streaming buffer fixed missing return statement
1 parent 4cf623e commit 403fd74

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

mono/metadata/class.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -602,6 +602,8 @@ mono_identifier_escape_type_append (char *bufferPtr, const char *identifier)
602602
return bufferPtr;
603603
}
604604
}
605+
606+
return bufferPtr;
605607
}
606608

607609
enum {
@@ -622,8 +624,8 @@ static void
622624
mono_type_get_name_foreach_name_chunk_recurse (MonoType *type, gboolean is_recursed, MonoTypeNameFormat format, GFunc nameChunkReport, void *userData)
623625
{
624626
MonoClass *klass = NULL;
625-
char buffer[kNameChunkBufferSize];
626-
memset (buffer, 0x00, kNameChunkBufferSize);
627+
char buffer[kNameChunkBufferSize + 1]; //null terminate the buffer
628+
memset (buffer, 0x00, kNameChunkBufferSize + 1);
627629
char *bufferPtr = buffer;
628630
char *bufferIter = buffer;
629631

@@ -722,7 +724,7 @@ mono_type_get_name_foreach_name_chunk_recurse (MonoType *type, gboolean is_recur
722724
*bufferIter++ = '!';
723725
*bufferIter++ = '!';
724726
}
725-
sprintf (bufferIter, type->data.generic_param->num);
727+
sprintf (bufferIter, "%d", type->data.generic_param->num);
726728
} else
727729
nameChunkReport (mono_generic_param_info (type->data.generic_param)->name, userData);
728730

0 commit comments

Comments
 (0)