diff options
author | Eli Zaretskii <eliz@gnu.org> | 2011-08-05 13:48:37 +0300 |
---|---|---|
committer | Eli Zaretskii <eliz@gnu.org> | 2011-08-05 13:48:37 +0300 |
commit | d736a7c36fca2e768e0cbea832dc6a06ce7a6485 (patch) | |
tree | 9a946cd630a0d11c013348f4fade526133b3061c /src/indent.c | |
parent | ba30281389be9f7352e137eae5376fcc06a75522 (diff) | |
download | emacs-d736a7c36fca2e768e0cbea832dc6a06ce7a6485.tar.gz |
Fix bug #9221 with resource allocation under word-wrap.
Add diagnostic facility for monitoring memory allocated for cache shelving.
src/xdisp.c (display_line): Release buffer allocated for shelved bidi
cache. (Bug#9221)
src/bidi.c (bidi_shelve_cache, bidi_unshelve_cache): Track total
amount allocated this far in `bidi_cache_total_alloc'.
(bidi_unshelve_cache): Accept an additional argument JUST_FREE; if
non-zero, only free the data buffer without restoring the cache
contents. All callers changed.
src/dispextern.h (bidi_unshelve_cache): Update prototype.
src/xdisp.c (SAVE_IT, pos_visible_p, move_it_in_display_line_to)
(move_it_in_display_line, move_it_to)
(move_it_vertically_backward, move_it_by_lines): Replace the call
to xfree to an equivalent call to bidi_unshelve_cache.
(move_it_in_display_line_to): Fix logic of returning
MOVE_POS_MATCH_OR_ZV in the bidi case.
Diffstat (limited to 'src/indent.c')
-rw-r--r-- | src/indent.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/indent.c b/src/indent.c index a73284c6657..3f7b3efe3b8 100644 --- a/src/indent.c +++ b/src/indent.c @@ -2135,7 +2135,7 @@ whether or not it is currently displayed in some window. */) } SET_PT_BOTH (IT_CHARPOS (it), IT_BYTEPOS (it)); - bidi_unshelve_cache (itdata); + bidi_unshelve_cache (itdata, 0); } if (BUFFERP (old_buffer)) |