diff options
| author | Richard M. Stallman | 1993-11-20 09:44:09 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1993-11-20 09:44:09 +0000 |
| commit | f75c0f8aae1ab21ee2155fa0b6664212a53f52e3 (patch) | |
| tree | 8c7c828dfc10bb68cfb7bee315eeaa35495d53c6 /src | |
| parent | b349f4fb74edd57c81f187d01aadfb79e91e9748 (diff) | |
| download | emacs-f75c0f8aae1ab21ee2155fa0b6664212a53f52e3.tar.gz emacs-f75c0f8aae1ab21ee2155fa0b6664212a53f52e3.zip | |
(compute_motion): Pass new arg to Fnext_single_property_change.
Diffstat (limited to 'src')
| -rw-r--r-- | src/indent.c | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/src/indent.c b/src/indent.c index f47cb2091bd..569057d895a 100644 --- a/src/indent.c +++ b/src/indent.c | |||
| @@ -460,25 +460,27 @@ compute_motion (from, fromvpos, fromhpos, to, tovpos, tohpos, width, hscroll, ta | |||
| 460 | /* if the `invisible' property is set, we can skip to | 460 | /* if the `invisible' property is set, we can skip to |
| 461 | the next property change */ | 461 | the next property change */ |
| 462 | while (pos == next_invisible && pos < to) | 462 | while (pos == next_invisible && pos < to) |
| 463 | { | 463 | { |
| 464 | XFASTINT (position) = pos; | 464 | XFASTINT (position) = pos; |
| 465 | prop = Fget_text_property (position, | 465 | prop = Fget_text_property (position, |
| 466 | Qinvisible, | 466 | Qinvisible, |
| 467 | Fcurrent_buffer ()); | 467 | Fcurrent_buffer ()); |
| 468 | { | 468 | { |
| 469 | Lisp_Object end; | 469 | Lisp_Object end, limit; |
| 470 | 470 | ||
| 471 | end = Fnext_single_property_change (position, | 471 | /* This is just an estimate to give reasonable |
| 472 | Qinvisible, | 472 | performance; nothing should go wrong if it is too small. */ |
| 473 | Fcurrent_buffer ()); | 473 | XFASTINT (limit) = pos + 100; |
| 474 | if (INTEGERP (end)) | 474 | end = Fnext_single_property_change (position, Qinvisible, |
| 475 | next_invisible = XINT (end); | 475 | Fcurrent_buffer (), limit); |
| 476 | else | 476 | if (INTEGERP (end)) |
| 477 | next_invisible = to; | 477 | next_invisible = XINT (end); |
| 478 | if (! NILP (prop)) | 478 | else |
| 479 | pos = next_invisible; | 479 | next_invisible = to; |
| 480 | } | 480 | if (! NILP (prop)) |
| 481 | } | 481 | pos = next_invisible; |
| 482 | } | ||
| 483 | } | ||
| 482 | if (pos >= to) | 484 | if (pos >= to) |
| 483 | break; | 485 | break; |
| 484 | #endif | 486 | #endif |