diff options
| author | Dmitry Antipov | 2014-03-03 12:27:58 +0400 |
|---|---|---|
| committer | Dmitry Antipov | 2014-03-03 12:27:58 +0400 |
| commit | 19dae293f9fecea07c91440f0a33076c54d39b49 (patch) | |
| tree | e2ef81c52b8c2dc8ffad510110f3bc71b2b3524f /src/ChangeLog | |
| parent | 8c1c761122b7472617c82fd00c949df52260c903 (diff) | |
| download | emacs-19dae293f9fecea07c91440f0a33076c54d39b49.tar.gz emacs-19dae293f9fecea07c91440f0a33076c54d39b49.zip | |
Avoid crashes when X fonts are erroneously freed on reused X
'Display *' connection data (Bug#16069). Note that X font
resources still may be leaked, but currently there is no way
to completely avoid it.
* xterm.h (struct x_display_info): New member x_id. Add comments.
* xterm.c (x_display_id): New variable.
(x_term_init): Assign identifier to each opened X connection.
* xfont.c (struct xfont): New member x_display_id.
(xfont_open): Initialize it with frame's display id.
(xfont_close): Check whether font's display id matches the one
recorded for the given display. Adjust comment.
* xftfont.c (struct xftfont_info):
(xftfont_open, xftfont_close): Exactly as above with xfont stuff.
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 280077c3844..7bc69b2894e 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -6,6 +6,20 @@ | |||
| 6 | (Fframe_font_cache) [FONT_DEBUG]: New function. | 6 | (Fframe_font_cache) [FONT_DEBUG]: New function. |
| 7 | (syms_of_font) [FONT_DEBUG]: Defsubr it. | 7 | (syms_of_font) [FONT_DEBUG]: Defsubr it. |
| 8 | 8 | ||
| 9 | Avoid crashes when X fonts are erroneously freed on reused X | ||
| 10 | 'Display *' connection data (Bug#16069). Note that X font | ||
| 11 | resources still may be leaked, but currently there is no way | ||
| 12 | to completely avoid it. | ||
| 13 | * xterm.h (struct x_display_info): New member x_id. Add comments. | ||
| 14 | * xterm.c (x_display_id): New variable. | ||
| 15 | (x_term_init): Assign identifier to each opened X connection. | ||
| 16 | * xfont.c (struct xfont): New member x_display_id. | ||
| 17 | (xfont_open): Initialize it with frame's display id. | ||
| 18 | (xfont_close): Check whether font's display id matches the one | ||
| 19 | recorded for the given display. Adjust comment. | ||
| 20 | * xftfont.c (struct xftfont_info): | ||
| 21 | (xftfont_open, xftfont_close): Exactly as above with xfont stuff. | ||
| 22 | |||
| 9 | 2014-03-01 Martin Rudalics <rudalics@gmx.at> | 23 | 2014-03-01 Martin Rudalics <rudalics@gmx.at> |
| 10 | 24 | ||
| 11 | Consider Vother_window_scroll_buffer valid iff it's a live buffer. | 25 | Consider Vother_window_scroll_buffer valid iff it's a live buffer. |