Mercurial > emacs
comparison src/search.c @ 17072:b14c67f044a6
Fix previous change.
author | Karl Heuer <kwzh@gnu.org> |
---|---|
date | Sun, 23 Feb 1997 22:49:18 +0000 |
parents | df904355f033 |
children | 82769113e12f |
comparison
equal
deleted
inserted
replaced
17071:70194012fb3a | 17072:b14c67f044a6 |
---|---|
846 } | 846 } |
847 else | 847 else |
848 { | 848 { |
849 while (pos > XINT (lim)) | 849 while (pos > XINT (lim)) |
850 { | 850 { |
851 int savepos = pos; | |
851 DEC_POS (pos); | 852 DEC_POS (pos); |
852 if (!fastmap[(int) SYNTAX (FETCH_CHAR (pos))]) | 853 if (!fastmap[(int) SYNTAX (FETCH_CHAR (pos))]) |
853 { | 854 { |
854 INC_POS (pos); | 855 pos = savepos; |
855 break; | 856 break; |
856 } | 857 } |
857 } | 858 } |
858 } | 859 } |
859 } | 860 } |
887 } | 888 } |
888 else | 889 else |
889 { | 890 { |
890 while (pos > XINT (lim)) | 891 while (pos > XINT (lim)) |
891 { | 892 { |
893 int savepos = pos; | |
892 DEC_POS (pos); | 894 DEC_POS (pos); |
893 if (fastmap[(c = FETCH_BYTE (pos))]) | 895 if (fastmap[(c = FETCH_BYTE (pos))]) |
894 { | 896 { |
895 if (!BASE_LEADING_CODE_P (c)) | 897 if (!BASE_LEADING_CODE_P (c)) |
896 ; | 898 ; |
901 ch = FETCH_MULTIBYTE_CHAR (pos); | 903 ch = FETCH_MULTIBYTE_CHAR (pos); |
902 for (i = 0; i < n_char_ranges; i += 2) | 904 for (i = 0; i < n_char_ranges; i += 2) |
903 if (ch >= char_ranges[i] && ch <= char_ranges[i + 1]) | 905 if (ch >= char_ranges[i] && ch <= char_ranges[i + 1]) |
904 break; | 906 break; |
905 if (!(negate ^ (i < n_char_ranges))) | 907 if (!(negate ^ (i < n_char_ranges))) |
906 break; | 908 { |
909 pos = savepos; | |
910 break; | |
911 } | |
907 } | 912 } |
908 else | 913 else |
909 if (!negate) | 914 if (!negate) |
910 break; | 915 { |
916 pos = savepos; | |
917 break; | |
918 } | |
911 } | 919 } |
912 else | 920 else |
913 break; | 921 { |
922 pos = savepos; | |
923 break; | |
924 } | |
914 } | 925 } |
915 } | 926 } |
916 } | 927 } |
917 SET_PT (pos); | 928 SET_PT (pos); |
918 immediate_quit = 0; | 929 immediate_quit = 0; |