]> git.eshelyaron.com Git - emacs.git/commitdiff
* src/alloc.c (mark_memory): Avoid signed integer overflow
authorPhilipp Stephani <phst@google.com>
Sun, 2 Aug 2020 10:58:44 +0000 (12:58 +0200)
committerPhilipp Stephani <phst@google.com>
Sun, 2 Aug 2020 10:58:44 +0000 (12:58 +0200)
src/alloc.c

index e139d8cf2625474c8c9236f69554b7f4bc425d49..be293cca54acaa96124245c09fcda0f3bc16ab25 100644 (file)
@@ -4861,7 +4861,7 @@ mark_memory (void const *start, void const *end)
         On a host with 32-bit pointers and 64-bit Lisp_Objects,
         a Lisp_Object might be split into registers saved into
         non-adjacent words and P might be the low-order word's value.  */
-      p = (char *) ((intptr_t) p + (intptr_t) lispsym);
+      p = (char *) ((uintptr_t) p + (uintptr_t) lispsym);
       mark_maybe_pointer (p);
 
       verify (alignof (Lisp_Object) % GC_POINTER_ALIGNMENT == 0);