2010-04-30 Zoltan Varga <vargaz@gmail.com>
authorZoltan Varga <vargaz@gmail.com>
Fri, 30 Apr 2010 16:59:10 +0000 (16:59 -0000)
committerZoltan Varga <vargaz@gmail.com>
Fri, 30 Apr 2010 16:59:10 +0000 (16:59 -0000)
* debugger-agent.c (type_commands): Add a new CMD_TYPE_GET_SOURCE_FILES_2
command which returns full path names.

svn path=/trunk/mono/; revision=156535

mono/mini/ChangeLog
mono/mini/debugger-agent.c

index e7e90c9ef4875719d73027499625a8513950d0a8..6a9a5529116291b099b8c53136248f97af31441a 100755 (executable)
@@ -1,3 +1,8 @@
+2010-04-30  Zoltan Varga  <vargaz@gmail.com>
+
+       * debugger-agent.c (type_commands): Add a new CMD_TYPE_GET_SOURCE_FILES_2
+       command which returns full path names.
+
 2010-04-29  Zoltan Varga  <vargaz@gmail.com>
 
        * tramp-x86.c (mono_arch_create_generic_class_init_trampoline_full): Set the
index a1921702f78eade6513aef25dfa93223e3ff17f0..8ebc05506c2f575ad6a97cad8c88a3c1e5b3c4e5 100644 (file)
@@ -402,7 +402,8 @@ typedef enum {
        CMD_TYPE_GET_PROPERTIES = 9,
        CMD_TYPE_GET_CATTRS = 10,
        CMD_TYPE_GET_FIELD_CATTRS = 11,
-       CMD_TYPE_GET_PROPERTY_CATTRS = 12
+       CMD_TYPE_GET_PROPERTY_CATTRS = 12,
+       CMD_TYPE_GET_SOURCE_FILES_2 = 13,
 } CmdType;
 
 typedef enum {
@@ -5730,7 +5731,8 @@ type_commands (int command, guint8 *p, guint8 *end, Buffer *buf)
                buffer_add_objid (buf, o);
                break;
        }
-       case CMD_TYPE_GET_SOURCE_FILES: {
+       case CMD_TYPE_GET_SOURCE_FILES:
+       case CMD_TYPE_GET_SOURCE_FILES_2: {
                gpointer iter = NULL;
                MonoMethod *method;
                char *source_file, *base;
@@ -5759,9 +5761,13 @@ type_commands (int command, guint8 *p, guint8 *end, Buffer *buf)
                buffer_add_int (buf, files->len);
                for (i = 0; i < files->len; ++i) {
                        source_file = g_ptr_array_index (files, i);
-                       base = g_path_get_basename (source_file);
-                       buffer_add_string (buf, base);
-                       g_free (base);
+                       if (command == CMD_TYPE_GET_SOURCE_FILES_2) {
+                               buffer_add_string (buf, source_file);
+                       } else {
+                               base = g_path_get_basename (source_file);
+                               buffer_add_string (buf, base);
+                               g_free (base);
+                       }
                        g_free (source_file);
                }
                g_ptr_array_free (files, TRUE);