diff options
| author | Sean Chittenden <seanc@FreeBSD.org> | 2003-02-19 20:12:55 +0000 | 
|---|---|---|
| committer | Sean Chittenden <seanc@FreeBSD.org> | 2003-02-19 20:12:55 +0000 | 
| commit | 3697f927ccac56335a4f3cb5d5e4c4ad7dd31ad0 (patch) | |
| tree | b03756daa618f6cd70cde824696d843876e6f742 /databases/postgresql83-server/files/patch-src::backend::commands::async.c | |
| parent | 4c1f9ea2390f0cb7f429b1a68bd2223565e7a100 (diff) | |
Notes
Diffstat (limited to 'databases/postgresql83-server/files/patch-src::backend::commands::async.c')
| -rw-r--r-- | databases/postgresql83-server/files/patch-src::backend::commands::async.c | 38 | 
1 files changed, 38 insertions, 0 deletions
| diff --git a/databases/postgresql83-server/files/patch-src::backend::commands::async.c b/databases/postgresql83-server/files/patch-src::backend::commands::async.c new file mode 100644 index 000000000000..78eea1eae01c --- /dev/null +++ b/databases/postgresql83-server/files/patch-src::backend::commands::async.c @@ -0,0 +1,38 @@ +*** src/backend/commands/async.c.orig	Sun Sep 15 21:24:41 2002 +--- src/backend/commands/async.c	Mon Feb 17 21:38:47 2003 +*************** +*** 599,604 **** +--- 599,614 ---- + +  	if (notifyInterruptEnabled) +  	{ ++ 		bool		save_ImmediateInterruptOK = ImmediateInterruptOK; ++ ++ 		/* ++ 		 * We may be called while ImmediateInterruptOK is true; turn it off ++ 		 * while messing with the NOTIFY state.  (We would have to save ++ 		 * and restore it anyway, because PGSemaphore operations inside ++ 		 * ProcessIncomingNotify() might reset it.) ++ 		 */ ++ 		ImmediateInterruptOK = false; ++ +  		/* +  		 * I'm not sure whether some flavors of Unix might allow another +  		 * SIGUSR2 occurrence to recursively interrupt this routine. To +*************** +*** 626,631 **** +--- 636,648 ---- +  					elog(LOG, "Async_NotifyHandler: done"); +  			} +  		} ++ ++ 		/* ++ 		 * Restore ImmediateInterruptOK, and check for interrupts if needed. ++ 		 */ ++ 		ImmediateInterruptOK = save_ImmediateInterruptOK; ++ 		if (save_ImmediateInterruptOK) ++ 			CHECK_FOR_INTERRUPTS(); +  	} +  	else +  	{ + | 
