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:
parent
bc4f7f3d58
commit
04c569546a
3 changed files with 13 additions and 8 deletions
|
@ -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)
|
||||
|
|
|
@ -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");
|
||||
}
|
||||
|
||||
|
|
|
@ -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 \
|
||||
|
|
Loading…
Add table
Reference in a new issue