]> code.delx.au - gnu-emacs/commitdiff
Support buffers > 2GB on 64-bit hosts.
authorEli Zaretskii <eliz@gnu.org>
Tue, 19 Apr 2011 10:48:30 +0000 (13:48 +0300)
committerEli Zaretskii <eliz@gnu.org>
Tue, 19 Apr 2011 10:48:30 +0000 (13:48 +0300)
 src/insdel.c (make_gap_larger): Remove limitation of buffer size
 to <= INT_MAX.
 src/syntax.h (SETUP_SYNTAX_TABLE_FOR_OBJECT): Fix setting of
 gl_state.e_property when gl_state.object is Qt.

src/ChangeLog
src/insdel.c
src/syntax.h

index 40174020bf4234831ab080bceb87007e0d49b5fb..4a675cc96c68567c7c7a82327f855a94224af6ae 100644 (file)
@@ -1,3 +1,11 @@
+2011-04-19  Eli Zaretskii  <eliz@gnu.org>
+
+       * syntax.h (SETUP_SYNTAX_TABLE_FOR_OBJECT): Fix setting of
+       gl_state.e_property when gl_state.object is Qt.
+
+       * insdel.c (make_gap_larger): Remove limitation of buffer size
+       to <= INT_MAX.
+
 2011-04-18  Chong Yidong  <cyd@stupidchicken.com>
 
        * xdisp.c (lookup_glyphless_char_display)
index 5ecb01c953806fe918af3a40e8bbe214ea1f06a1..2662858c2a1238ab418584adf2922e95b1914960 100644 (file)
@@ -404,11 +404,7 @@ make_gap_larger (EMACS_INT nbytes_added)
   { 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 still use `int'.  */
-       || total_size != (EMACS_INT) (int) total_size)
+       || total_size != XINT (make_number (total_size)))
       error ("Buffer exceeds maximum size");
   }
 
index 9f328f568c707f2a68da6070cdda4afe2a829bb2..42d689cb96ce83a5e4fe4d2ffa45a2978eed2bfa 100644 (file)
@@ -203,7 +203,7 @@ extern char syntax_code_spec[16];
 do                                                                     \
   {                                                                    \
     gl_state.use_global = 0;                                           \
-    gl_state.current_syntax_table = BVAR (current_buffer, syntax_table);       \
+    gl_state.current_syntax_table = BVAR (current_buffer, syntax_table);\
   } while (0)
 
 /* This macro should be called with FROM at the start of forward
@@ -230,7 +230,8 @@ do                                                                  \
 while (0)
 
 /* Same as above, but in OBJECT.  If OBJECT is nil, use current buffer.
-   If it is t, ignore properties altogether.
+   If it is t (which is only used in fast_c_string_match_ignore_case),
+   ignore properties altogether.
 
    This is meant for regex.c to use.  For buffers, regex.c passes arguments
    to the UPDATE_SYNTAX_TABLE macros which are relative to BEGV.
@@ -257,7 +258,7 @@ do                                                                  \
     else if (EQ (gl_state.object, Qt))                                 \
       {                                                                        \
        gl_state.b_property = 0;                                        \
-       gl_state.e_property = 1500000000;                               \
+       gl_state.e_property = MOST_POSITIVE_FIXNUM;                     \
        gl_state.offset = 0;                                            \
       }                                                                        \
     else                                                               \