diff src/ntproc.c @ 239:41f2f0e326e9 r20-5b18

Import from CVS: tag r20-5b18
author cvs
date Mon, 13 Aug 2007 10:15:48 +0200
parents 2c611d1463a6
children 727739f917cb
line wrap: on
line diff
--- a/src/ntproc.c	Mon Aug 13 10:15:04 2007 +0200
+++ b/src/ntproc.c	Mon Aug 13 10:15:48 2007 +0200
@@ -40,8 +40,10 @@
 #undef kill
 
 #include <windows.h>
+#include <sys/socket.h>
 
 #include "lisp.h"
+#include "sysproc.h"
 #include "nt.h"
 #include "ntheap.h" /* From 19.34.6 */
 #include "systime.h"
@@ -89,13 +91,12 @@
 
 Lisp_Object Qhigh, Qlow;
 
-#ifndef SYS_SIGLIST_DECLARED
-extern char *sys_siglist[];
+#ifndef DEBUG_XEMACS
+__inline
 #endif
-
-#ifdef EMACSDEBUG
 void _DebPrint (const char *fmt, ...)
 {
+#ifdef DEBUG_XEMACS
   char buf[1024];
   va_list args;
 
@@ -103,8 +104,8 @@
   vsprintf (buf, fmt, args);
   va_end (args);
   OutputDebugString (buf);
+#endif
 }
-#endif
 
 /* sys_signal moved to nt.c. It's now called msw_signal... */
 
@@ -675,7 +676,8 @@
 /* When a new child process is created we need to register it in our list,
    so intercept spawn requests.  */
 int 
-sys_spawnve (int mode, char *cmdname, char **argv, char **envp)
+sys_spawnve (int mode, CONST char *cmdname,
+	     CONST char * CONST *argv, CONST char *CONST *envp)
 {
   Lisp_Object program, full;
   char *cmdline, *env, *parg, **targ;
@@ -712,14 +714,16 @@
 	  return -1;
 	}
       cmdname = XSTRING_DATA (full);
-      argv[0] = cmdname;
+      /* #### KLUDGE */
+      *(char**)(argv[0]) = cmdname;
     }
   UNGCPRO;
 
   /* make sure argv[0] and cmdname are both in DOS format */
   strcpy (cmdname = alloca (strlen (cmdname) + 1), argv[0]);
   unixtodos_filename (cmdname);
-  argv[0] = cmdname;
+  /* #### KLUDGE */
+  *(char**)(argv[0]) = cmdname;
 
   /* Determine whether program is a 16-bit DOS executable, or a Win32
      executable that is implicitly linked to the Cygnus dll (implying it