summaryrefslogtreecommitdiff
path: root/src/alloc.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2011-06-08 12:54:32 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2011-06-08 12:54:32 -0700
commit9c4c5f81ceb3fb3100a6a81adffcf764b843363c (patch)
treeddb255b95a05dd32e8fde8c2ce081c79a1c31aaa /src/alloc.c
parente46bb31a9f62b157947257b444fb44b1f9a42db6 (diff)
downloademacs-9c4c5f81ceb3fb3100a6a81adffcf764b843363c.tar.gz
emacs-9c4c5f81ceb3fb3100a6a81adffcf764b843363c.tar.bz2
emacs-9c4c5f81ceb3fb3100a6a81adffcf764b843363c.zip
* lisp.h (SAFE_ALLOCA_LISP): Check for integer overflow.
(struct Lisp_Save_Value): Use ptrdiff_t, not int, for 'integer' member. * alloc.c (make_save_value): Integer argument is now of type ptrdiff_t, not int. (mark_object): Use ptrdiff_t, not int. * lisp.h (pD): New macro. * print.c (print_object): Use it.
Diffstat (limited to 'src/alloc.c')
-rw-r--r--src/alloc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/alloc.c b/src/alloc.c
index 4530e0a7377..fd2884af1c3 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -3160,7 +3160,7 @@ free_misc (Lisp_Object misc)
The unwind function can get the C values back using XSAVE_VALUE. */
Lisp_Object
-make_save_value (void *pointer, int integer)
+make_save_value (void *pointer, ptrdiff_t integer)
{
register Lisp_Object val;
register struct Lisp_Save_Value *p;
@@ -5514,7 +5514,7 @@ mark_object (Lisp_Object arg)
if (ptr->dogc)
{
Lisp_Object *p = (Lisp_Object *) ptr->pointer;
- int nelt;
+ ptrdiff_t nelt;
for (nelt = ptr->integer; nelt > 0; nelt--, p++)
mark_maybe_object (*p);
}