+2004-12-11 Martin Baulig <martin@ximian.com>
+
+ * get.c (get_class_name): Renamed to get_escaped_class_name() and
+ return an escaped class name; correctly escape nested classes.
+
2004-12-11 Martin Baulig <martin@ximian.com>
* get.c (dis_stringify_type): Added `gboolean is_def' argument; if
}
static char *
-get_class_name (MonoClass *c)
+get_escaped_class_name (MonoClass *c)
{
+ char *result, *esname;
+
+ esname = get_escaped_name (c->name);
+
if (c->nested_in){
- char *part_a = get_class_name (c->nested_in);
- char *result;
+ char *part_a = get_escaped_class_name (c->nested_in);
- result = g_strdup_printf ("%s/%s", part_a, c->name);
+ result = g_strdup_printf ("%s/%s", part_a, esname);
g_free (part_a);
- return result;
- }
- if (*c->name_space)
- return g_strdup_printf ("%s.%s", c->name_space, c->name);
+ } else if (*c->name_space)
+ result = g_strdup_printf ("%s.%s", c->name_space, esname);
else
- return g_strdup (c->name);
+ result = g_strdup (esname);
+
+ g_free (esname);
+ return result;
}
char *
}
}
- result = get_class_name (c);
-
- esname = get_escaped_name (result);
- g_free (result);
+ esname = get_escaped_class_name (c);
if (c->generic_class) {
MonoGenericClass *gclass = c->generic_class;