]> git.eshelyaron.com Git - emacs.git/commitdiff
(skip_chars): When fetching char after \,
authorRichard M. Stallman <rms@gnu.org>
Wed, 13 May 1998 06:47:15 +0000 (06:47 +0000)
committerRichard M. Stallman <rms@gnu.org>
Wed, 13 May 1998 06:47:15 +0000 (06:47 +0000)
don't fail to set c_leading_code.

src/syntax.c

index 5d67d11850ceeac4c5268a34853ea01490d095a6..62cc124a31854b6209939b703eee1bfeb2d3d055 100644 (file)
@@ -1187,7 +1187,8 @@ Lisp_Object skip_chars ();
 DEFUN ("skip-chars-forward", Fskip_chars_forward, Sskip_chars_forward, 1, 2, 0,
   "Move point forward, stopping before a char not in STRING, or at pos LIM.\n\
 STRING is like the inside of a `[...]' in a regular expression\n\
-except that `]' is never special and `\\' quotes `^', `-' or `\\'.\n\
+except that `]' is never special and `\\' quotes `^', `-' or `\\'\n\
+ (but not as the end of a range; quoting is never needed there).\n\
 Thus, with arg \"a-zA-Z\", this skips letters stopping before first nonletter.\n\
 With arg \"^a-zA-Z\", skips nonletters stopping before first letter.\n\
 Returns the distance traveled, either zero or positive.")
@@ -1311,9 +1312,12 @@ skip_chars (forwardp, syntaxp, string, lim)
                break;
 
              if (string_multibyte)
-               FETCH_STRING_CHAR_ADVANCE (c, string, i, i_byte);
+               {
+                 c_leading_code = XSTRING (string)->data[i];
+                 FETCH_STRING_CHAR_ADVANCE (c, string, i, i_byte);
+               }
              else
-               c = XSTRING (string)->data[i++];
+               c = c_leading_code = XSTRING (string)->data[i++];
            }
          if (i < XSTRING (string)->size && XSTRING (string)->data[i] == '-')
            {