aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman1998-05-03 02:32:58 +0000
committerRichard M. Stallman1998-05-03 02:32:58 +0000
commit7276d3d802a3bfeaaad76a1b31297519419c202b (patch)
treed411545e5cdb6ea3924b84cee86ec29efe22f407 /src
parent3c6db9d561899772a5ec8043ffea6ccb2a0ac4f2 (diff)
downloademacs-7276d3d802a3bfeaaad76a1b31297519419c202b.tar.gz
emacs-7276d3d802a3bfeaaad76a1b31297519419c202b.zip
(search_buffer): Fix casts when assigning raw_pattern.
(compile_pattern_1): Declare raw_pattern as unsigned char *. Fix casts when assigning raw_pattern. Cast raw_pattern when calling re_compile_pattern.
Diffstat (limited to 'src')
-rw-r--r--src/search.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/search.c b/src/search.c
index fc4142ce478..c3b873353da 100644
--- a/src/search.c
+++ b/src/search.c
@@ -129,7 +129,7 @@ compile_pattern_1 (cp, pattern, translate, regp, posix, multibyte)
129 int posix; 129 int posix;
130 int multibyte; 130 int multibyte;
131{ 131{
132 char *raw_pattern; 132 unsigned char *raw_pattern;
133 int raw_pattern_size; 133 int raw_pattern_size;
134 char *val; 134 char *val;
135 reg_syntax_t old; 135 reg_syntax_t old;
@@ -140,14 +140,14 @@ compile_pattern_1 (cp, pattern, translate, regp, posix, multibyte)
140 140
141 if (multibyte == STRING_MULTIBYTE (pattern)) 141 if (multibyte == STRING_MULTIBYTE (pattern))
142 { 142 {
143 raw_pattern = (char *) XSTRING (pattern)->data; 143 raw_pattern = (unsigned char *) XSTRING (pattern)->data;
144 raw_pattern_size = STRING_BYTES (XSTRING (pattern)); 144 raw_pattern_size = STRING_BYTES (XSTRING (pattern));
145 } 145 }
146 else if (multibyte) 146 else if (multibyte)
147 { 147 {
148 raw_pattern_size = count_size_as_multibyte (XSTRING (pattern)->data, 148 raw_pattern_size = count_size_as_multibyte (XSTRING (pattern)->data,
149 XSTRING (pattern)->size); 149 XSTRING (pattern)->size);
150 raw_pattern = (char *) alloca (raw_pattern_size + 1); 150 raw_pattern = (unsigned char *) alloca (raw_pattern_size + 1);
151 copy_text (XSTRING (pattern)->data, raw_pattern, 151 copy_text (XSTRING (pattern)->data, raw_pattern,
152 XSTRING (pattern)->size, 0, 1); 152 XSTRING (pattern)->size, 0, 1);
153 } 153 }
@@ -160,7 +160,7 @@ compile_pattern_1 (cp, pattern, translate, regp, posix, multibyte)
160 so that only the multibyte chars which really correspond to 160 so that only the multibyte chars which really correspond to
161 the chosen single-byte character set can possibly match. */ 161 the chosen single-byte character set can possibly match. */
162 raw_pattern_size = XSTRING (pattern)->size; 162 raw_pattern_size = XSTRING (pattern)->size;
163 raw_pattern = (char *) alloca (raw_pattern_size + 1); 163 raw_pattern = (unsigned char *) alloca (raw_pattern_size + 1);
164 copy_text (XSTRING (pattern)->data, raw_pattern, 164 copy_text (XSTRING (pattern)->data, raw_pattern,
165 STRING_BYTES (XSTRING (pattern)), 1, 0); 165 STRING_BYTES (XSTRING (pattern)), 1, 0);
166 } 166 }
@@ -172,7 +172,8 @@ compile_pattern_1 (cp, pattern, translate, regp, posix, multibyte)
172 BLOCK_INPUT; 172 BLOCK_INPUT;
173 old = re_set_syntax (RE_SYNTAX_EMACS 173 old = re_set_syntax (RE_SYNTAX_EMACS
174 | (posix ? 0 : RE_NO_POSIX_BACKTRACKING)); 174 | (posix ? 0 : RE_NO_POSIX_BACKTRACKING));
175 val = (char *) re_compile_pattern (raw_pattern, raw_pattern_size, &cp->buf); 175 val = (char *) re_compile_pattern ((char *)raw_pattern,
176 raw_pattern_size, &cp->buf);
176 re_set_syntax (old); 177 re_set_syntax (old);
177 UNBLOCK_INPUT; 178 UNBLOCK_INPUT;
178 if (val) 179 if (val)
@@ -1135,7 +1136,7 @@ search_buffer (string, pos, pos_byte, lim, lim_byte, n,
1135 1136
1136 if (multibyte == STRING_MULTIBYTE (string)) 1137 if (multibyte == STRING_MULTIBYTE (string))
1137 { 1138 {
1138 raw_pattern = (char *) XSTRING (string)->data; 1139 raw_pattern = (unsigned char *) XSTRING (string)->data;
1139 raw_pattern_size = XSTRING (string)->size; 1140 raw_pattern_size = XSTRING (string)->size;
1140 raw_pattern_size_byte = STRING_BYTES (XSTRING (string)); 1141 raw_pattern_size_byte = STRING_BYTES (XSTRING (string));
1141 } 1142 }
@@ -1145,7 +1146,7 @@ search_buffer (string, pos, pos_byte, lim, lim_byte, n,
1145 raw_pattern_size_byte 1146 raw_pattern_size_byte
1146 = count_size_as_multibyte (XSTRING (string)->data, 1147 = count_size_as_multibyte (XSTRING (string)->data,
1147 raw_pattern_size); 1148 raw_pattern_size);
1148 raw_pattern = (char *) alloca (raw_pattern_size_byte + 1); 1149 raw_pattern = (unsigned char *) alloca (raw_pattern_size_byte + 1);
1149 copy_text (XSTRING (string)->data, raw_pattern, 1150 copy_text (XSTRING (string)->data, raw_pattern,
1150 XSTRING (string)->size, 0, 1); 1151 XSTRING (string)->size, 0, 1);
1151 } 1152 }
@@ -1159,7 +1160,7 @@ search_buffer (string, pos, pos_byte, lim, lim_byte, n,
1159 the chosen single-byte character set can possibly match. */ 1160 the chosen single-byte character set can possibly match. */
1160 raw_pattern_size = XSTRING (string)->size; 1161 raw_pattern_size = XSTRING (string)->size;
1161 raw_pattern_size_byte = XSTRING (string)->size; 1162 raw_pattern_size_byte = XSTRING (string)->size;
1162 raw_pattern = (char *) alloca (raw_pattern_size + 1); 1163 raw_pattern = (unsigned char *) alloca (raw_pattern_size + 1);
1163 copy_text (XSTRING (string)->data, raw_pattern, 1164 copy_text (XSTRING (string)->data, raw_pattern,
1164 STRING_BYTES (XSTRING (string)), 1, 0); 1165 STRING_BYTES (XSTRING (string)), 1, 0);
1165 } 1166 }