#ifdef WINDOWSNT
#define _P_NOWAIT 1 /* from process.h */
-#include <windows.h>
#include "nt.h"
#endif
static Lisp_Object
call_process_cleanup (Lisp_Object fdpid)
{
- int fd = XINT (Fcar (fdpid));
+ int fd = XINT (Fcar (fdpid));
int pid = XINT (Fcdr (fdpid));
-#ifdef WINDOWSNT
- HANDLE pHandle;
-#endif
if (!call_process_exited &&
EMACS_KILLPG (pid, SIGINT) == 0)
message ("Waiting for process to die...(type C-g again to kill it instantly)");
#ifdef WINDOWSNT
- pHandle = OpenProcess(PROCESS_ALL_ACCESS, 0, pid);
- if (pHandle == NULL)
- {
+ {
+ HANDLE pHandle = OpenProcess (PROCESS_ALL_ACCESS, 0, pid);
+ if (pHandle == NULL)
warn_when_safe (Qprocess, Qwarning,
"cannot open process (PID %d) for cleanup", pid);
- }
- wait_for_termination (pHandle);
+ else
+ wait_for_termination (pHandle);
+ }
#else
wait_for_termination (pid);
#endif
if (nread == 0)
break;
+#if 0
#ifdef DOS_NT
/* Until we pull out of MULE things like
make_decoding_input_stream(), we do the following which is
less elegant. --marcpa */
+ /* We did. -- kkm */
{
int lf_count = 0;
if (NILP (Vbinary_process_output)) {
}
}
#endif
+#endif
total_read += nread;
{
char **ep = env;
char *envvar_external;
- Bufbyte *envvar_internal = XSTRING_DATA (XCAR (tail));
- GET_C_CHARPTR_EXT_FILENAME_DATA_ALLOCA (envvar_internal, envvar_external);
+ TO_EXTERNAL_FORMAT (LISP_STRING, XCAR (tail),
+ C_STRING_ALLOCA, envvar_external,
+ Qfile_name);
/* See if envvar_external duplicates any string already in the env.
If so, don't put it in.
char **envp;
Vprocess_environment = Qnil;
for (envp = environ; envp && *envp; envp++)
- {
- Vprocess_environment = Fcons (build_ext_string (*envp, FORMAT_OS),
- Vprocess_environment);
- }
+ Vprocess_environment =
+ Fcons (build_ext_string (*envp, Qfile_name), Vprocess_environment);
}
{