[runtime] Fix native backtraces with lldb by closing stdin.
authorZoltan Varga <vargaz@gmail.com>
Sat, 22 Aug 2015 02:00:41 +0000 (22:00 -0400)
committerZoltan Varga <vargaz@gmail.com>
Sat, 22 Aug 2015 02:00:49 +0000 (22:00 -0400)
mono/mini/mini-darwin.c

index 715c3ac438fb1d24da272d545d87378876d42c82..35a35f532051c397654da9b5b92140dccfe0c10b 100644 (file)
@@ -255,12 +255,14 @@ mono_gdb_render_native_backtraces (pid_t crashed_pid)
        FILE *commands;
        gboolean using_lldb = FALSE;
 
+       using_lldb = TRUE;
+       /*
        argv [0] = g_find_program_in_path ("gdb");
-       if (!argv [0]) {
-               // FIXME: LLDB doesn't quit when given the 'quit' command
-               //argv [0] = g_find_program_in_path ("lldb");
-               //using_lldb = TRUE;
-       }
+       if (!argv [0])
+               using_lldb = TRUE;
+       */
+       if (using_lldb)
+               argv [0] = g_find_program_in_path ("lldb");
 
        if (argv [0] == NULL)
                return;
@@ -292,6 +294,8 @@ mono_gdb_render_native_backtraces (pid_t crashed_pid)
        fflush (commands);
        fclose (commands);
 
+       fclose (stdin);
+
        execv (argv [0], (char**)argv);
        unlink (template);
 #else