133 |
{ |
{ |
134 |
Lisp_Object tmp_table; |
Lisp_Object tmp_table; |
135 |
int cnt = 0, invalidate = 1; |
int cnt = 0, invalidate = 1; |
136 |
INTERVAL i, oldi; |
INTERVAL i; |
137 |
|
|
138 |
if (init) |
if (init) |
139 |
{ |
{ |
164 |
gl_state.e_property = INTERVAL_LAST_POS (i) - gl_state.offset; |
gl_state.e_property = INTERVAL_LAST_POS (i) - gl_state.offset; |
165 |
goto update; |
goto update; |
166 |
} |
} |
167 |
oldi = i = count > 0 ? gl_state.forward_i : gl_state.backward_i; |
i = count > 0 ? gl_state.forward_i : gl_state.backward_i; |
168 |
|
|
169 |
/* We are guaranteed to be called with CHARPOS either in i, |
/* We are guaranteed to be called with CHARPOS either in i, |
170 |
or further off. */ |
or further off. */ |
249 |
} |
} |
250 |
else |
else |
251 |
{ |
{ |
252 |
gl_state.b_property = i->position + LENGTH (i) - gl_state.offset; |
gl_state.b_property |
253 |
|
= i->position + LENGTH (i) - gl_state.offset; |
254 |
gl_state.backward_i = i; |
gl_state.backward_i = i; |
255 |
} |
} |
256 |
return; |
return; |
259 |
{ |
{ |
260 |
if (count > 0) |
if (count > 0) |
261 |
{ |
{ |
262 |
gl_state.e_property = i->position + LENGTH (i) - gl_state.offset; |
gl_state.e_property |
263 |
|
= i->position + LENGTH (i) - gl_state.offset |
264 |
|
/* e_property at EOB is not set to ZV but to ZV+1, so that |
265 |
|
we can do INC(from);UPDATE_SYNTAX_TABLE_FORWARD without |
266 |
|
having to check eob between the two. */ |
267 |
|
+ (NULL_INTERVAL_P (next_interval (i)) ? 1 : 0); |
268 |
gl_state.forward_i = i; |
gl_state.forward_i = i; |
269 |
} |
} |
270 |
else |
else |