Allow fine-grained image-cache flushing.
authorStefan Monnier <monnier@iro.umontreal.ca>
Sun, 24 Feb 2008 13:36:39 +0000 (13:36 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Sun, 24 Feb 2008 13:36:39 +0000 (13:36 +0000)
commita2bc5bdd7db3f708b7489d91919336e775c3e6ca
treeca7e9efac023071ffcbeb514ab66fc4c0d76a8b9
parent01dcf28448dab12ad7160942323144836467dd65
Allow fine-grained image-cache flushing.
* dispextern.h (struct image): Add `dependencies' field.
(clear_image_caches): Change arg to Lisp_Object.
* image.c (make_image): Initialize `dependencies' field.
(clear_image_cache): Change arg to allow fine-grained flushing.
Perform the flush even if image-cache-eviction-delay is nil.
(clear_image_caches): Change arg to Lisp_Object.
(Fclear_image_cache): Expand meaning of the argument.
(mark_image): Mark `dependencies' field.
* xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
(lface_hash): Use XHASH rather than XFASTINT.
(face_at_buffer_position): Fix int -> EMACS_INT position.
* xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
(select_frame_for_redisplay): Remove code duplication.
(redisplay_internal): Adapt arg to call to clear_image_caches.
doc/lispref/display.texi
etc/NEWS
src/dispextern.h
src/image.c
src/xdisp.c
src/xfaces.c