diff src/syntax.c @ 89909:68c22ea6027c

Sync to HEAD
author Kenichi Handa <handa@m17n.org>
date Fri, 16 Apr 2004 12:51:06 +0000
parents 51677cb10ced
children 4c90ffeb71c5
line wrap: on
line diff
--- a/src/syntax.c	Thu Apr 15 01:08:34 2004 +0000
+++ b/src/syntax.c	Fri Apr 16 12:51:06 2004 +0000
@@ -2584,8 +2584,8 @@
 	    case Sstring_fence:
 	      while (1)
 		{
+		  if (from == stop) goto lose;
 		  DEC_BOTH (from, from_byte);
-		  if (from == stop) goto lose;
 		  UPDATE_SYNTAX_TABLE_BACKWARD (from);
 		  if (!char_quoted (from, from_byte)
 		      && (c = FETCH_CHAR_AS_MULTIBYTE (from_byte),
@@ -2600,19 +2600,14 @@
 	      while (1)
 		{
 		  if (from == stop) goto lose;
-		  temp_pos = from_byte;
-		  if (! NILP (current_buffer->enable_multibyte_characters))
-		    DEC_POS (temp_pos);
-		  else
-		    temp_pos--;
-		  UPDATE_SYNTAX_TABLE_BACKWARD (from - 1);
-		  if (!char_quoted (from - 1, temp_pos)
-		      && stringterm == (c = FETCH_CHAR_AS_MULTIBYTE (temp_pos))
+		  DEC_BOTH (from, from_byte);
+		  UPDATE_SYNTAX_TABLE_BACKWARD (from);
+		  if (!char_quoted (from, from_byte)
+		      && (stringterm
+			  == (c = FETCH_CHAR_AS_MULTIBYTE (from_byte)))
 		      && SYNTAX_WITH_MULTIBYTE_CHECK (c) == Sstring)
 		    break;
-		  DEC_BOTH (from, from_byte);
 		}
-	      DEC_BOTH (from, from_byte);
 	      if (!depth && sexpflag) goto done2;
 	      break;
 	    default: