mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-27 08:39:28 +08:00
That's just the lovely way windows handles a "segfault". Gotta be really
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
This commit is contained in:
parent
9c3d654a16
commit
7fad5fff0d
@ -3,7 +3,7 @@
|
||||
*
|
||||
* Copyright (c) 2000-2004, PostgreSQL Global Development Group
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/bin/psql/common.c,v 1.93 2004/10/30 23:10:50 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/bin/psql/common.c,v 1.94 2004/11/01 19:21:50 momjian Exp $
|
||||
*/
|
||||
#include "postgres_fe.h"
|
||||
#include "common.h"
|
||||
@ -307,9 +307,14 @@ consoleHandler(DWORD dwCtrlType)
|
||||
}
|
||||
|
||||
void
|
||||
setup_cancel_handler(void)
|
||||
setup_win32_locks(void)
|
||||
{
|
||||
InitializeCriticalSection(&cancelConnLock);
|
||||
}
|
||||
|
||||
void
|
||||
setup_cancel_handler(void)
|
||||
{
|
||||
SetConsoleCtrlHandler(consoleHandler, TRUE);
|
||||
}
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* Copyright (c) 2000-2004, PostgreSQL Global Development Group
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/bin/psql/common.h,v 1.40 2004/10/30 23:10:50 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/bin/psql/common.h,v 1.41 2004/11/01 19:21:50 momjian Exp $
|
||||
*/
|
||||
#ifndef COMMON_H
|
||||
#define COMMON_H
|
||||
@ -49,6 +49,7 @@ extern void ResetCancelConn(void);
|
||||
#ifndef WIN32
|
||||
extern void handle_sigint(SIGNAL_ARGS);
|
||||
#else
|
||||
extern void setup_win32_locks(void);
|
||||
extern void setup_cancel_handler(void);
|
||||
#endif
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
*
|
||||
* Copyright (c) 2000-2004, PostgreSQL Global Development Group
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/bin/psql/startup.c,v 1.104 2004/10/16 03:10:16 momjian Exp $
|
||||
* $PostgreSQL: pgsql/src/bin/psql/startup.c,v 1.105 2004/11/01 19:21:50 momjian Exp $
|
||||
*/
|
||||
#include "postgres_fe.h"
|
||||
|
||||
@ -121,6 +121,7 @@ main(int argc, char *argv[])
|
||||
|
||||
#ifdef WIN32
|
||||
setvbuf(stderr, NULL, _IONBF, 0);
|
||||
setup_win32_locks();
|
||||
#endif
|
||||
pset.cur_cmd_source = stdin;
|
||||
pset.cur_cmd_interactive = false;
|
||||
|
Loading…
Reference in New Issue
Block a user