From eb4d412de87ff7078f4c0923ea014db01b7ce551 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 27 Mar 2011 01:21:49 -0700 Subject: [PATCH] * syntax.c (scan_sexps_forward): Avoid pointer wraparound. --- src/ChangeLog | 2 ++ src/syntax.c | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 3d917d0e5a4..8704ba4b904 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,7 @@ 2011-03-27 Paul Eggert + * syntax.c (scan_sexps_forward): Avoid pointer wraparound. + * xterm.c (x_make_frame_visible, same_x_server): Redo to avoid overflow concerns. diff --git a/src/syntax.c b/src/syntax.c index c1442c396c1..0a1525b54ea 100644 --- a/src/syntax.c +++ b/src/syntax.c @@ -3265,9 +3265,9 @@ do { prev_from = from; \ = (curlevel == levelstart) ? -1 : (curlevel - 1)->last; state.location = from; state.levelstarts = Qnil; - while (--curlevel >= levelstart) - state.levelstarts = Fcons (make_number (curlevel->last), - state.levelstarts); + while (curlevel > levelstart) + state.levelstarts = Fcons (make_number ((--curlevel)->last), + state.levelstarts); immediate_quit = 0; *stateptr = state; -- 2.39.5