diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2008-02-24 13:36:39 +0000 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2008-02-24 13:36:39 +0000 |
commit | a2bc5bdd7db3f708b7489d91919336e775c3e6ca (patch) | |
tree | ca7e9efac023071ffcbeb514ab66fc4c0d76a8b9 /src/xfaces.c | |
parent | 01dcf28448dab12ad7160942323144836467dd65 (diff) | |
download | emacs-a2bc5bdd7db3f708b7489d91919336e775c3e6ca.tar.gz |
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.
Diffstat (limited to 'src/xfaces.c')
-rw-r--r-- | src/xfaces.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/xfaces.c b/src/xfaces.c index d160d9e8c29..897d8383a49 100644 --- a/src/xfaces.c +++ b/src/xfaces.c @@ -1011,7 +1011,7 @@ clear_face_cache (clear_fonts_p) if (FRAME_WINDOW_P (f)) clear_face_gcs (FRAME_FACE_CACHE (f)); } - clear_image_caches (0); + clear_image_caches (Qnil); } #endif /* HAVE_WINDOW_SYSTEM */ } @@ -5481,10 +5481,10 @@ lface_hash (v) return (hash_string_case_insensitive (v[LFACE_FAMILY_INDEX]) ^ hash_string_case_insensitive (v[LFACE_FOREGROUND_INDEX]) ^ hash_string_case_insensitive (v[LFACE_BACKGROUND_INDEX]) - ^ XFASTINT (v[LFACE_WEIGHT_INDEX]) - ^ XFASTINT (v[LFACE_SLANT_INDEX]) - ^ XFASTINT (v[LFACE_SWIDTH_INDEX]) - ^ XFASTINT (v[LFACE_HEIGHT_INDEX])); + ^ XHASH (v[LFACE_WEIGHT_INDEX]) + ^ XHASH (v[LFACE_SLANT_INDEX]) + ^ XHASH (v[LFACE_SWIDTH_INDEX]) + ^ XHASH (v[LFACE_HEIGHT_INDEX])); } @@ -7755,7 +7755,7 @@ realize_x_face (cache, attrs) font_load_for_face (f, face); else #endif /* USE_FONT_BACKEND */ - load_face_font (f, face); + load_face_font (f, face); if (face->font) face->fontset = make_fontset_for_ascii_face (f, fontset, face); else @@ -8149,7 +8149,7 @@ face_at_buffer_position (w, pos, region_beg, region_end, /* Look at properties from overlays. */ { - int next_overlay; + EMACS_INT next_overlay; GET_OVERLAYS_AT (pos, overlay_vec, noverlays, &next_overlay, 0); if (next_overlay < endpos) |