diff options
author | Chong Yidong <cyd@stupidchicken.com> | 2010-12-06 01:54:52 -0500 |
---|---|---|
committer | Chong Yidong <cyd@stupidchicken.com> | 2010-12-06 01:54:52 -0500 |
commit | d8b2a96214c9b53ab914901fdde71f5b0a931678 (patch) | |
tree | b460510f4b2cc856332affb7c7ae2796d04acdb4 /src/dispextern.h | |
parent | 0afb6242c77237cd2cc1f0e623b08e20488c5b74 (diff) | |
download | emacs-d8b2a96214c9b53ab914901fdde71f5b0a931678.tar.gz |
Fix crash with invisible text and overlays (Bug#7016).
* src/dispextern.h (struct it): New member overlay_strings_charpos.
* src/xdisp.c (next_overlay_string, load_overlay_strings): Record the
charpos where we computed n_overlay_strings.
(next_overlay_string): Load overlay strings at recorded position,
which may not be the same as the iterator's charpos (Bug#7016).
Diffstat (limited to 'src/dispextern.h')
-rw-r--r-- | src/dispextern.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/dispextern.h b/src/dispextern.h index bc34aec2dd5..b43565739ea 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -1989,6 +1989,12 @@ struct it OVERLAY_STRING_CHUNK_SIZE. */ int n_overlay_strings; + /* The charpos where n_overlay_strings was calculated. This should + be set at the same time as n_overlay_strings. It is needed + because we show before-strings at the start of invisible text; + see handle_invisible_prop in xdisp.c. */ + int overlay_strings_charpos; + /* Vector of overlays to process. Overlay strings are processed OVERLAY_STRING_CHUNK_SIZE at a time. */ #define OVERLAY_STRING_CHUNK_SIZE 16 |