aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/syntax.c44
1 files changed, 23 insertions, 21 deletions
diff --git a/src/syntax.c b/src/syntax.c
index 58932ff24a1..d3d6f5b0ba5 100644
--- a/src/syntax.c
+++ b/src/syntax.c
@@ -2308,7 +2308,9 @@ This includes chars with \"quote\" or \"prefix\" syntax (' or p).")
2308 assuming that FROM has state OLDSTATE (nil means FROM is start of function), 2308 assuming that FROM has state OLDSTATE (nil means FROM is start of function),
2309 and return a description of the state of the parse at END. 2309 and return a description of the state of the parse at END.
2310 If STOPBEFORE is nonzero, stop at the start of an atom. 2310 If STOPBEFORE is nonzero, stop at the start of an atom.
2311 If COMMENTSTOP is nonzero, stop at the start of a comment. */ 2311 If COMMENTSTOP is 1, stop at the start of a comment.
2312 If COMMENTSTOP is -1, stop at the start or end of a comment,
2313 after the beginning of a string, or after the end of a string. */
2312 2314
2313static void 2315static void
2314scan_sexps_forward (stateptr, from, end, targetdepth, 2316scan_sexps_forward (stateptr, from, end, targetdepth,
@@ -2569,29 +2571,29 @@ scan_sexps_forward (stateptr, from, end, targetdepth,
2569 if (boundary_stop) goto done; 2571 if (boundary_stop) goto done;
2570 startinstring: 2572 startinstring:
2571 { 2573 {
2572 nofence = state.instring != ST_STRING_STYLE; 2574 nofence = state.instring != ST_STRING_STYLE;
2573 2575
2574 while (1) 2576 while (1)
2575 { 2577 {
2576 int c; 2578 int c;
2577 2579
2578 if (from >= end) goto done; 2580 if (from >= end) goto done;
2579 c = FETCH_CHAR (from); 2581 c = FETCH_CHAR (from);
2580 if (nofence && c == state.instring) break; 2582 if (nofence && c == state.instring) break;
2581 UPDATE_SYNTAX_TABLE_FORWARD (from); 2583 UPDATE_SYNTAX_TABLE_FORWARD (from);
2582 switch (SWITCH_ENUM_CAST (SYNTAX (c))) 2584 switch (SWITCH_ENUM_CAST (SYNTAX (c)))
2583 { 2585 {
2584 case Sstring_fence: 2586 case Sstring_fence:
2585 if (!nofence) goto string_end; 2587 if (!nofence) goto string_end;
2586 break; 2588 break;
2587 case Scharquote: 2589 case Scharquote:
2588 case Sescape: 2590 case Sescape:
2589 INC_FROM; 2591 INC_FROM;
2590 startquotedinstring: 2592 startquotedinstring:
2591 if (from >= end) goto endquoted; 2593 if (from >= end) goto endquoted;
2592 }
2593 INC_FROM;
2594 } 2594 }
2595 INC_FROM;
2596 }
2595 } 2597 }
2596 string_end: 2598 string_end:
2597 state.instring = -1; 2599 state.instring = -1;