Support buffers > 2GB on 64-bit hosts.

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.
This commit is contained in:
Eli Zaretskii 2011-04-19 13:48:30 +03:00
parent bc4f7f3d58
commit 04c569546a
3 changed files with 13 additions and 8 deletions

View 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)

View 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");
}

View 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 \