diff --git a/runtime/trampolines.m b/runtime/trampolines.m index cc3ffc879570..043589b88e20 100644 --- a/runtime/trampolines.m +++ b/runtime/trampolines.m @@ -440,6 +440,12 @@ type++; } + if (c == max_char) { + LOGZ (" xamarin_collapse_struct_name (%s, %i) => failed (too long)!\n", input, max_char); + struct_name [0] = 0; // return an empty string + return false; + } + struct_name [c] = 0; // Zero-terminate. LOGZ (" xamarin_collapse_struct_name (%s, %i) => %s (succeeded)\n", input, max_char, struct_name); return true;