Mercurial > emacs
changeset 76249:9e2414dc2556
(send_process_object): Check the process status and
signal an error if something is wrong.
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Thu, 01 Mar 2007 10:17:41 +0000 |
parents | d3c5626daefb |
children | 16787585fca8 |
files | src/process.c |
diffstat | 1 files changed, 10 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/process.c Thu Mar 01 10:01:32 2007 +0000 +++ b/src/process.c Thu Mar 01 10:17:41 2007 +0000 @@ -5694,8 +5694,16 @@ : ! NILP (XBUFFER (object)->enable_multibyte_characters)) { struct Lisp_Process *p = XPROCESS (proc); - struct coding_system *coding = proc_encode_coding_system[XINT (p->outfd)]; - + struct coding_system *coding; + + if (p->raw_status_new) + update_status (p); + if (! EQ (p->status, Qrun)) + error ("Process %s not running", SDATA (p->name)); + if (XINT (p->outfd) < 0) + error ("Output file descriptor of %s is closed", SDATA (p->name)); + + coding = proc_encode_coding_system[XINT (p->outfd)]; if (! EQ (coding->symbol, p->encode_coding_system)) /* The coding system for encoding was changed to raw-text because we sent a unibyte text previously. Now we are