1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-19 01:10:57 -08:00

*print.c (Fexternal_debugging_output): Use more-conservative overflow fix.

This commit is contained in:
Paul Eggert 2011-10-24 16:06:11 -07:00
parent ee78040148
commit 0fd11aa5e2
2 changed files with 3 additions and 4 deletions

View file

@ -554,8 +554,7 @@
Use ptrdiff_t, not int, to avoid needless 32-bit limit on 64-bit hosts.
(PRINTPREPARE): Use int, not ptrdiff_t, where int is wide enough.
(printchar, strout): Use xpalloc to catch size calculation overflow.
(Fexternal_debugging_output): Use CHECK_CHARACTER, not CHECK_NUMBER,
to avoid mishandling large integers.
(Fexternal_debugging_output): Don't overflow EMACS_INT->int conversion.
(print_error_message): Use SAFE_ALLOCA, not alloca.
(print_object): Use int, not EMACS_INT, where int is wide enough.
* process.c (Fdelete_process): Don't assume pid fits into EMACS_INT.

View file

@ -716,8 +716,8 @@ You can call print while debugging emacs, and pass it this function
to make it write to the debugging output. */)
(Lisp_Object character)
{
CHECK_CHARACTER (character);
putc ((int) XINT (character), stderr);
CHECK_NUMBER (character);
putc (XINT (character) & 0xFF, stderr);
#ifdef WINDOWSNT
/* Send the output to a debugger (nothing happens if there isn't one). */