emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs/src ChangeLog insdel.c


From: Stefan Monnier
Subject: [Emacs-diffs] emacs/src ChangeLog insdel.c
Date: Thu, 19 Nov 2009 01:40:27 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Stefan Monnier <monnier>        09/11/19 01:40:27

Modified files:
        src            : ChangeLog insdel.c 

Log message:
        (make_gap_larger): Don't make as many assumptions about the
        representation of Lisp integers.
        Reported by MJ Chan <address@hidden>.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/emacs/src/ChangeLog?cvsroot=emacs&r1=1.7880&r2=1.7881
http://cvs.savannah.gnu.org/viewcvs/emacs/src/insdel.c?cvsroot=emacs&r1=1.209&r2=1.210

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/emacs/emacs/src/ChangeLog,v
retrieving revision 1.7880
retrieving revision 1.7881
diff -u -b -r1.7880 -r1.7881
--- ChangeLog   17 Nov 2009 21:57:48 -0000      1.7880
+++ ChangeLog   19 Nov 2009 01:40:22 -0000      1.7881
@@ -1,3 +1,9 @@
+2009-11-19  Stefan Monnier  <address@hidden>
+
+       * insdel.c (make_gap_larger): Don't make as many assumptions about the
+       representation of Lisp integers.
+       Reported by MJ Chan <address@hidden>.
+
 2009-11-17  Andreas Schwab  <address@hidden>
 
        * lisp.h: Remove declaration of Ffont_get_system_font.
@@ -6,8 +12,8 @@
 
 2009-11-17  Jan Djärv  <address@hidden>
 
-       * xsettings.c (something_changedCB, Ffont_get_system_font): Check
-       use_system_font.
+       * xsettings.c (something_changedCB, Ffont_get_system_font):
+       Check use_system_font.
        (syms_of_xsettings): DEFVAR font-use-system-font.
 
 2009-11-17  Andreas Schwab  <address@hidden>
@@ -18,10 +24,10 @@
 
 2009-11-17  Jan Djärv  <address@hidden>
 
-       * xftfont.c (xftfont_fix_match): Older versions of fontconfig does
+       * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
        not have FC_LCD_*.  #define them if not there.
 
-       * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto
+       * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
 
        * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
 
@@ -36,10 +42,11 @@
 
        * xfont.c (xfont_driver): Initialize all members.
 
-       * xfns.c (x_default_font_parameter): Try font from 
Ffont_get_system_font.
+       * xfns.c (x_default_font_parameter):
+       Try font from Ffont_get_system_font.
        Do not get font from x_default_parameter if we got one from
        Ffont_get_system_font.
-       (Fx_select_font): Get the defaut font name from :name of FRAME_FONT (f).
+       (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
 
        * w32font.c (w32font_driver): Initialize all members.
 
@@ -47,22 +54,22 @@
 
        * lisp.h: Declare syms_of_xsettings.
 
-       * keyboard.c (kbd_buffer_get_event, make_lispy_event): Handle 
-       CONFIG_CHANGED_EVENT.
+       * keyboard.c (kbd_buffer_get_event, make_lispy_event):
+       Handle CONFIG_CHANGED_EVENT.
 
        * ftfont.c (ftfont_filter_properties): New function.
 
        * frame.c (x_set_font): Remove unused variable lval.
 
-       * font.h (struct font_driver): filter_properties is new.
+       * font.h (struct font_driver): Add filter_properties.
 
        * font.c (font_put_extra): Don't return if val is nil, it means
        boolean option is off.
        (font_parse_fcname): Collect all extra properties in extra_props
        and call filter_properties for all drivers with extra_props and
        font as parameter.
-       (font_open_entity): Do not use cache, it does not pick up new fontconfig
-       settings like hinting.
+       (font_open_entity): Do not use cache, it does not pick up new
+       fontconfig settings like hinting.
        (font_load_for_lface): If spec had a name in it, store it in entity.
 
        * emacs.c (main): Call syms_of_xsettings
@@ -89,8 +96,7 @@
 
 2009-11-14  Andreas Schwab  <address@hidden>
 
-       * Makefile.in: Ignore errors from mkdir when creating deps
-       directory.
+       * Makefile.in: Ignore errors from mkdir when creating deps directory.
 
 2009-11-14  Jan Djärv  <address@hidden>
 

Index: insdel.c
===================================================================
RCS file: /sources/emacs/emacs/src/insdel.c,v
retrieving revision 1.209
retrieving revision 1.210
diff -u -b -r1.209 -r1.210
--- insdel.c    6 Nov 2009 06:50:57 -0000       1.209
+++ insdel.c    19 Nov 2009 01:40:26 -0000      1.210
@@ -512,16 +512,16 @@
   /* If we have to get more space, get enough to last a while.  */
   nbytes_added += 2000;
 
+  { EMACS_INT total_size = Z_BYTE - BEG_BYTE + GAP_SIZE + nbytes_added;
+    if (total_size < 0
+       /* Don't allow a buffer size that won't fit in a Lisp integer.  */
+       || total_size != XINT (make_number (total_size))
   /* Don't allow a buffer size that won't fit in an int
      even if it will fit in a Lisp integer.
-     That won't work because so many places use `int'.
-
-     Make sure we don't introduce overflows in the calculation.  */
-
-  if (Z_BYTE - BEG_BYTE + GAP_SIZE
-      >= (((EMACS_INT) 1 << (min (VALBITS, BITS_PER_INT) - 1)) - 1
-         - nbytes_added))
+          That won't work because so many places still use `int'.  */
+       || total_size != (EMACS_INT) (int) total_size)
     error ("Buffer exceeds maximum size");
+  }
 
   enlarge_buffer_text (current_buffer, nbytes_added);
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]