X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fprocess.h;h=736660d7506e5795fe3923c23bf85632c729a7ac;hb=5d0cf827247def2db200614bf5d3ab700776d641;hp=8e230cf76868b1bd7a81f2b8b51a1fbfeb9d99a7;hpb=3e447015251ce6dcde843cbed10d9033d5538622;p=chise%2Fxemacs-chise.git.1 diff --git a/src/process.h b/src/process.h index 8e230cf..736660d 100644 --- a/src/process.h +++ b/src/process.h @@ -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_ */