diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 10 | ||||
| -rw-r--r-- | src/xfaces.c | 18 |
2 files changed, 11 insertions, 17 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 01065ef0cf1..c95b29e4ec6 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,13 @@ | |||
| 1 | 2004-05-18 Kim F. Storm <storm@cua.dk> | ||
| 2 | |||
| 3 | * buffer.h (GET_OVERLAYS_AT): New macro. | ||
| 4 | * msdos.c (IT_note_mouse_highlight): Use it. | ||
| 5 | * textprop.c (get_char_property_and_overlay): Use it. | ||
| 6 | * xdisp.c (next_overlay_change, note_mouse_highlight): Use it. | ||
| 7 | * xfaces.c (face_at_buffer_position): Use it. | ||
| 8 | |||
| 9 | * print.c (print_object): Increase buf size. | ||
| 10 | |||
| 1 | 2004-05-17 Kim F. Storm <storm@cua.dk> | 11 | 2004-05-17 Kim F. Storm <storm@cua.dk> |
| 2 | 12 | ||
| 3 | * alloc.c (mark_object): Ignore Lisp_Misc_Free objects. | 13 | * alloc.c (mark_object): Ignore Lisp_Misc_Free objects. |
diff --git a/src/xfaces.c b/src/xfaces.c index ac44f3317ce..2bd3f31d6ea 100644 --- a/src/xfaces.c +++ b/src/xfaces.c | |||
| @@ -7297,24 +7297,8 @@ face_at_buffer_position (w, pos, region_beg, region_end, | |||
| 7297 | /* Look at properties from overlays. */ | 7297 | /* Look at properties from overlays. */ |
| 7298 | { | 7298 | { |
| 7299 | int next_overlay; | 7299 | int next_overlay; |
| 7300 | int len; | ||
| 7301 | |||
| 7302 | /* First try with room for 40 overlays. */ | ||
| 7303 | len = 40; | ||
| 7304 | overlay_vec = (Lisp_Object *) alloca (len * sizeof (Lisp_Object)); | ||
| 7305 | noverlays = overlays_at (pos, 0, &overlay_vec, &len, | ||
| 7306 | &next_overlay, NULL, 0); | ||
| 7307 | |||
| 7308 | /* If there are more than 40, make enough space for all, and try | ||
| 7309 | again. */ | ||
| 7310 | if (noverlays > len) | ||
| 7311 | { | ||
| 7312 | len = noverlays; | ||
| 7313 | overlay_vec = (Lisp_Object *) alloca (len * sizeof (Lisp_Object)); | ||
| 7314 | noverlays = overlays_at (pos, 0, &overlay_vec, &len, | ||
| 7315 | &next_overlay, NULL, 0); | ||
| 7316 | } | ||
| 7317 | 7300 | ||
| 7301 | GET_OVERLAYS_AT (pos, overlay_vec, noverlays, &next_overlay, 0); | ||
| 7318 | if (next_overlay < endpos) | 7302 | if (next_overlay < endpos) |
| 7319 | endpos = next_overlay; | 7303 | endpos = next_overlay; |
| 7320 | } | 7304 | } |