]> granicus.if.org Git - postgresql/commitdiff
Minor code cleanup: make the WIN32 case less gratuitously different from
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 12 Jun 2006 02:39:49 +0000 (02:39 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 12 Jun 2006 02:39:49 +0000 (02:39 +0000)
the other platform-specific cases in ps_status.

src/backend/utils/misc/ps_status.c

index 84ec0433920e781ef8d4d56ebcc8e10b371581ba..bd8f1d21a1d0afbefa06d5984e6e10598132c544 100644 (file)
@@ -5,7 +5,7 @@
  * to contain some useful information. Mechanism differs wildly across
  * platforms.
  *
- * $PostgreSQL: pgsql/src/backend/utils/misc/ps_status.c,v 1.29 2006/03/05 15:58:49 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/misc/ps_status.c,v 1.30 2006/06/12 02:39:49 tgl Exp $
  *
  * Copyright (c) 2000-2006, PostgreSQL Global Development Group
  * various details abducted from various places
@@ -33,7 +33,7 @@
 extern char **environ;
 
 
-/*------
+/*
  * Alternative ways of updating ps display:
  *
  * PS_USE_SETPROCTITLE
@@ -51,6 +51,8 @@ extern char **environ;
  * PS_USE_CLOBBER_ARGV
  *        write over the argv and environment area
  *        (most SysV-like systems)
+ * PS_USE_WIN32
+ *        push the string out as the name of a Windows event
  * PS_USE_NONE
  *        don't update ps display
  *        (This is the default, as it is safest.)
@@ -65,7 +67,7 @@ extern char **environ;
 #define PS_USE_CHANGE_ARGV
 #elif defined(__linux__) || defined(_AIX) || defined(__sgi) || (defined(sun) && !defined(BSD)) || defined(ultrix) || defined(__ksr__) || defined(__osf__) || defined(__svr4__) || defined(__svr5__) || defined(__darwin__)
 #define PS_USE_CLOBBER_ARGV
-#elif defined (WIN32)
+#elif defined(WIN32)
 #define PS_USE_WIN32
 #else
 #define PS_USE_NONE
@@ -96,30 +98,6 @@ static size_t ps_buffer_fixed_size;          /* size of the constant prefix */
 static int     save_argc;
 static char **save_argv;
 
-#ifdef WIN32
-
- /*
-  * Win32 does not support showing any changed arguments. To make it at all
-  * possible to track which backend is doing what, we create a named object
-  * that can be viewed with for example Process Explorer
-  */
-static HANDLE ident_handle = INVALID_HANDLE_VALUE;
-static void
-pgwin32_update_ident(char *ident)
-{
-       char            name[PS_BUFFER_SIZE + 32];
-
-       if (ident_handle != INVALID_HANDLE_VALUE)
-               CloseHandle(ident_handle);
-
-       sprintf(name, "pgident: %s", ident);
-
-       ident_handle = CreateEvent(NULL,
-                                                          TRUE,
-                                                          FALSE,
-                                                          name);
-}
-#endif
 
 /*
  * Call this early in startup to save the original argc/argv values.
@@ -292,9 +270,6 @@ init_ps_display(const char *username, const char *dbname,
 
        ps_buffer_fixed_size = strlen(ps_buffer);
 
-#ifdef WIN32
-       pgwin32_update_ident(ps_buffer);
-#endif
 #endif   /* not PS_USE_NONE */
 }
 
@@ -352,9 +327,25 @@ set_ps_display(const char *activity)
        }
 #endif   /* PS_USE_CLOBBER_ARGV */
 
-#ifdef WIN32
-       pgwin32_update_ident(ps_buffer);
-#endif
+#ifdef PS_USE_WIN32
+       {
+               /*
+                * Win32 does not support showing any changed arguments. To make it
+                * at all possible to track which backend is doing what, we create a
+                * named object that can be viewed with for example Process Explorer.
+                */
+               static HANDLE ident_handle = INVALID_HANDLE_VALUE;
+               char            name[PS_BUFFER_SIZE + 32];
+
+               if (ident_handle != INVALID_HANDLE_VALUE)
+                       CloseHandle(ident_handle);
+
+               sprintf(name, "pgident: %s", ps_buffer);
+
+               ident_handle = CreateEvent(NULL, TRUE, FALSE, name);
+       }
+#endif   /* PS_USE_WIN32 */
+
 #endif   /* not PS_USE_NONE */
 }