interesting for MS to catch all those dumps...
Anyway. Oops. Seems I ran my regression tests with the old psql, and
just managed to update the backend, when I tested that patch. Turns out
there are codepaths where we'd access the Critical Section before it was
initialized. Attached patch breaks the initializeation off to a separate
part and adds that one to a much earlier position in the program.
Magnus Hagander
}
void
-setup_cancel_handler(void)
+setup_win32_locks(void)
{
InitializeCriticalSection(&cancelConnLock);
+}
+
+void
+setup_cancel_handler(void)
+{
SetConsoleCtrlHandler(consoleHandler, TRUE);
}
#ifndef WIN32
extern void handle_sigint(SIGNAL_ARGS);
#else
+extern void setup_win32_locks(void);
extern void setup_cancel_handler(void);
#endif
#ifdef WIN32
setvbuf(stderr, NULL, _IONBF, 0);
+ setup_win32_locks();
#endif
pset.cur_cmd_source = stdin;
pset.cur_cmd_interactive = false;