* buffer.c (struct sortstr.size, record_overlay_string): Don't truncate size to int.
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 17 Jun 2011 07:57:42 +0000 (00:57 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 17 Jun 2011 07:57:42 +0000 (00:57 -0700)
src/ChangeLog
src/buffer.c

index 0f10082..fcb6f66 100644 (file)
@@ -3,6 +3,7 @@
        * buffer.c (struct sortvec.priority, struct sortstr.priority):
        Now EMACS_INT, not int.
        (compare_overlays, cmp_for_strings): Avoid subtraction overflow.
+       (struct sortstr.size, record_overlay_string): Don't truncate size to int.
 
 2011-06-16  Paul Eggert  <eggert@cs.ucla.edu>
 
index 4487de1..90a10ec 100644 (file)
@@ -2926,7 +2926,7 @@ sort_overlays (Lisp_Object *overlay_vec, int noverlays, struct window *w)
 struct sortstr
 {
   Lisp_Object string, string2;
-  int size;
+  ptrdiff_t size;
   EMACS_INT priority;
 };
 
@@ -2962,7 +2962,8 @@ cmp_for_strings (const void *as1, const void *as2)
 }
 
 static void
-record_overlay_string (struct sortstrlist *ssl, Lisp_Object str, Lisp_Object str2, Lisp_Object pri, int size)
+record_overlay_string (struct sortstrlist *ssl, Lisp_Object str,
+                      Lisp_Object str2, Lisp_Object pri, ptrdiff_t size)
 {
   EMACS_INT nbytes;