File tree Expand file tree Collapse file tree 2 files changed +23
-0
lines changed Expand file tree Collapse file tree 2 files changed +23
-0
lines changed Original file line number Diff line number Diff line change 1414
1515#define HCAST (type , handle ) ((type)(intptr_t)handle)
1616
17+ void open_in_gdb (void )
18+ {
19+ static struct child_process cp = CHILD_PROCESS_INIT ;
20+ extern char * _pgmptr ;
21+
22+ argv_array_pushl (& cp .args , "mintty" , "gdb" , NULL );
23+ argv_array_pushf (& cp .args , "--pid=%d" , getpid ());
24+ cp .clean_on_exit = 1 ;
25+ if (start_command (& cp ) < 0 )
26+ die_errno ("Could not start gdb" );
27+ sleep (1 );
28+ }
29+
1730int err_win_to_posix (DWORD winerr )
1831{
1932 int error = ENOSYS ;
Original file line number Diff line number Diff line change @@ -691,6 +691,16 @@ extern CRITICAL_SECTION pinfo_cs;
691691int wmain (int argc , const wchar_t * * w_argv );
692692int main (int argc , const char * * argv );
693693
694+ /*
695+ * For debugging: if a problem occurs, say, in a Git process that is spawned
696+ * from another Git process which in turn is spawned from yet another Git
697+ * process, it can be quite daunting to figure out what is going on.
698+ *
699+ * Call this function to open a new MinTTY (this assumes you are in Git for
700+ * Windows' SDK) with a GDB that attaches to the current process right away.
701+ */
702+ extern void open_in_gdb (void );
703+
694704/*
695705 * Used by Pthread API implementation for Windows
696706 */
You can’t perform that action at this time.
0 commit comments