X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmetadata%2Fdebug-helpers.c;h=449895a56106a2a0e3efbbc97230cd3bfe938712;hb=aecdb91a0628efb03d0b6578e9dcdda90904ad20;hp=2553361c14db27d1af028b583ffbf1848b13c6a6;hpb=52cb2c951a414b8f2d6c95b5630c0d1688214a45;p=mono.git diff --git a/mono/metadata/debug-helpers.c b/mono/metadata/debug-helpers.c index 2553361c14d..449895a5610 100644 --- a/mono/metadata/debug-helpers.c +++ b/mono/metadata/debug-helpers.c @@ -5,6 +5,7 @@ * Mono Project (http://www.mono-project.com) * * Copyright (C) 2005-2008 Novell, Inc. (http://www.novell.com) + * Licensed under the MIT license. See LICENSE file in the project root for full license information. */ #include @@ -443,10 +444,6 @@ mono_method_desc_match (MonoMethodDesc *desc, MonoMethod *method) gboolean name_match; name_match = strcmp (desc->name, method->name) == 0; -#ifndef _EGLIB_MAJOR - if (!name_match && desc->name_glob) - name_match = g_pattern_match_simple (desc->name, method->name); -#endif if (!name_match) return FALSE; if (!desc->args) @@ -921,6 +918,7 @@ print_name_space (MonoClass *klass) void mono_object_describe (MonoObject *obj) { + MonoError error; MonoClass* klass; const char* sep; if (!obj) { @@ -929,14 +927,19 @@ mono_object_describe (MonoObject *obj) } klass = mono_object_class (obj); if (klass == mono_defaults.string_class) { - char *utf8 = mono_string_to_utf8 ((MonoString*)obj); - if (strlen (utf8) > 60) { + char *utf8 = mono_string_to_utf8_checked ((MonoString*)obj, &error); + mono_error_cleanup (&error); /* FIXME don't swallow the error */ + if (utf8 && strlen (utf8) > 60) { utf8 [57] = '.'; utf8 [58] = '.'; utf8 [59] = '.'; utf8 [60] = 0; } - g_print ("String at %p, length: %d, '%s'\n", obj, mono_string_length ((MonoString*) obj), utf8); + if (utf8) { + g_print ("String at %p, length: %d, '%s'\n", obj, mono_string_length ((MonoString*) obj), utf8); + } else { + g_print ("String at %p, length: %d, unable to decode UTF16\n", obj, mono_string_length ((MonoString*) obj)); + } g_free (utf8); } else if (klass->rank) { MonoArray *array = (MonoArray*)obj;