Mercurial > emacs
changeset 74406:6bc8bd6fe72c
(Qsignal): Declare extern.
(syms_of_process): Don't intern/staticpro them here.
(read_process_output): Abort if carryover < 0.
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Mon, 04 Dec 2006 12:26:50 +0000 |
parents | 8289a04178f1 |
children | 1fb529de23b7 |
files | src/process.c |
diffstat | 1 files changed, 9 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/process.c Mon Dec 04 12:26:35 2006 +0000 +++ b/src/process.c Mon Dec 04 12:26:50 2006 +0000 @@ -149,7 +149,8 @@ #include "atimer.h" Lisp_Object Qprocessp; -Lisp_Object Qrun, Qstop, Qsignal; +Lisp_Object Qrun, Qstop; +extern Lisp_Object Qsignal; Lisp_Object Qopen, Qclosed, Qconnect, Qfailed, Qlisten; Lisp_Object Qlocal, Qipv4, Qdatagram; #ifdef AF_INET6 @@ -5139,6 +5140,9 @@ } carryover = nbytes - coding->consumed; + if (carryover < 0) + abort (); + if (SCHARS (p->decoding_buf) < carryover) p->decoding_buf = make_uninit_string (carryover); bcopy (chars + coding->consumed, SDATA (p->decoding_buf), @@ -5249,11 +5253,15 @@ } } carryover = nbytes - coding->consumed; + if (carryover < 0) + abort (); + if (SCHARS (p->decoding_buf) < carryover) p->decoding_buf = make_uninit_string (carryover); bcopy (chars + coding->consumed, SDATA (p->decoding_buf), carryover); XSETINT (p->decoding_carryover, carryover); + /* Adjust the multibyteness of TEXT to that of the buffer. */ if (NILP (current_buffer->enable_multibyte_characters) != ! STRING_MULTIBYTE (text)) @@ -6997,8 +7005,6 @@ staticpro (&Qrun); Qstop = intern ("stop"); staticpro (&Qstop); - Qsignal = intern ("signal"); - staticpro (&Qsignal); /* Qexit is already staticpro'd by syms_of_eval; don't staticpro it here again.