Re: postmaster.pid

Поиск
Список
Период
Сортировка
От Dave Page
Тема Re: postmaster.pid
Дата
Msg-id E7F85A1B5FF8D44C8A1AF6885BC9A0E41A7870@ratbert.vale-housing.co.uk
обсуждение исходный текст
Список pgsql-hackers-win32

> -----Original Message-----
> From: pgsql-hackers-win32-owner@postgresql.org
> [mailto:pgsql-hackers-win32-owner@postgresql.org] On Behalf
> Of Dave Page
> Sent: 24 August 2004 15:55
> To: Andrew Dunstan
> Cc: Barry Lind; pgsql-hackers-win32@postgresql.org; Max Dunn
> Subject: Re: [pgsql-hackers-win32] postmaster.pid
>
>
>
> however I have an hour or so now so I'll take a
> quick look at the kill() issue.

OK, quick (untested) hack below. Open to suggestions if anyone's got a
better way to do it...

Regards, Dave

Index: kill.c
===================================================================
RCS file: /projects/cvsroot/pgsql-server/src/port/kill.c,v
retrieving revision 1.2
diff -u -r1.2 kill.c
--- kill.c    24 Jun 2004 18:53:48 -0000    1.2
+++ kill.c    24 Aug 2004 15:56:03 -0000
@@ -25,8 +25,25 @@
     BYTE        sigData = sig;
     BYTE        sigRet = 0;
     DWORD        bytes;
+    DWORD        handle;

-    if (sig >= PG_SIGNAL_COUNT || sig <= 0)
+    /* Look, but don't touch... */
+    if (sig == 0)
+    {
+        handle = OpenProcess(PROCESS_QUERY_INFORMATION, FALSE,
pid);
+        if (!handle)
+        {
+            errno = EINVAL;
+            return -1;
+        }
+        else
+        {
+            CloseHandle(handle);
+            return 0;
+        }
+    }
+
+    /* Regular kill... */
+    if (sig >= PG_SIGNAL_COUNT || sig < 0)
     {
         errno = EINVAL;
         return -1;

В списке pgsql-hackers-win32 по дате отправления:

Предыдущее
От: "Dave Page"
Дата:
Сообщение: Re: postmaster.pid
Следующее
От: Tom Lane
Дата:
Сообщение: Re: postmaster.pid