update.
[chise/xemacs-chise.git.1] / src / process.h
index 8e230cf..736660d 100644 (file)
@@ -37,14 +37,16 @@ void wait_without_blocking (void);
 
 #else /* not NO_SUBPROCESSES */
 
-/* Only process.c needs to know about the guts of this */
+/* struct Lisp_Process is defined in procimpl.h; only process-*.c need
+   to know about the guts of it. */
 
 DECLARE_LRECORD (process, Lisp_Process);
 #define XPROCESS(x) XRECORD (x, process, Lisp_Process)
 #define XSETPROCESS(x, p) XSETRECORD (x, p, process)
 #define PROCESSP(x) RECORDP (x, process)
 #define CHECK_PROCESS(x) CHECK_RECORD (x, process)
-#define PROCESS_LIVE_P(x) (!NILP ((x)->pipe_instream))
+#define PROCESS_LIVE_P(x) (EQ ((x)->status_symbol, Qrun))
+#define PROCESS_READABLE_P(x) (!NILP ((x)->pipe_instream))
 
 #define CHECK_LIVE_PROCESS(x) do {                     \
   CHECK_PROCESS (x);                                   \
@@ -52,6 +54,12 @@ DECLARE_LRECORD (process, Lisp_Process);
     dead_wrong_type_argument (Qprocess_live_p, (x));   \
 } while (0)
 
+#define CHECK_READABLE_PROCESS(x) do {                 \
+  CHECK_PROCESS (x);                                   \
+  if (! PROCESS_READABLE_P (XPROCESS (x)))             \
+    dead_wrong_type_argument (Qprocess_readable_p, (x));       \
+} while (0)
+
 #ifdef emacs
 
 EXFUN (Fprocess_kill_without_query, 2);
@@ -108,7 +116,7 @@ void kick_status_notify (void);
 
 void deactivate_process (Lisp_Object proc);
 
-#ifdef WINDOWSNT
+#ifdef WIN32_NATIVE
 int
 #else
 void
@@ -138,13 +146,4 @@ Lisp_Object canonicalize_host_name (Lisp_Object host);
 
 #endif /* emacs */
 
-#ifdef HAVE_GETPT
-#define PTY_ITERATION
-#define PTY_OPEN \
-    if ((fd = getpt()) < 0 || grantpt (fd) < 0 || unlockpt (fd) < 0) \
-      return -1;
-#define PTY_NAME_SPRINTF
-#define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ptsname (fd));
-#endif
-
 #endif /* INCLUDED_process_h_ */