diff options
author | Po Lu <luangruo@yahoo.com> | 2021-11-12 08:17:41 +0800 |
---|---|---|
committer | Po Lu <luangruo@yahoo.com> | 2021-11-12 08:17:41 +0800 |
commit | 554a875493680f8b52821267ee88e191d462ea36 (patch) | |
tree | 22bd120a4d1cfc3c8cc99bf17a6361437e140399 /test/lisp/emacs-lisp/bytecomp-resources | |
parent | a8fc08085110de00ebcbd67b5273a755a5cb8ea1 (diff) | |
download | emacs-554a875493680f8b52821267ee88e191d462ea36.tar.gz emacs-554a875493680f8b52821267ee88e191d462ea36.tar.bz2 emacs-554a875493680f8b52821267ee88e191d462ea36.zip |
Prevent crashes in xwidgets whose buffers have been killed
* doc/lispref/display.texi (Xwidgets): Explain meaning of killed
xwidgets.
* src/xwidget.c (Fxwidget_live_p): New function.
(Fxwidget_perform_lispy_event, WEBKIT_FN_INIT)
(Fxwidget_resize, Fxwidget_size_request)
(Fxwidget_info, Fxwidget_plist)
(Fset_xwidget_buffer, Fset_xwidget_plist)
(Fset_xwidget_query_on_exit_flag)
(Fxwidget_query_on_exit_flag)
(Fxwidget_webkit_search)
(Fxwidget_webkit_next_result)
(Fxwidget_webkit_previous_result)
(Fxwidget_webkit_finish_search)
(Fxwidget_webkit_load_html): Check for live xwidgets instead of
just xwidgets.
(xwidget_button, xwidget_motion_or_crossing)
(xv_do_draw, x_draw_xwidget_glyph_string)
(Fdelete_xwidget_view): Ignore killed xwidgets.
(syms_of_xwidget): Define new symbols and subrs and define
appropriate weakness of id_to_xwidget map.
(kill_buffer_xwidgets): Check live xwidgets instead of
killed xwidgets, set xwidget buffer to nil, and rely on GC to
free the hash table for us instead.
* src/xwidget.h (XWIDGET_LIVE_P, CHECK_LIVE_XWIDGET): New
macros.
Diffstat (limited to 'test/lisp/emacs-lisp/bytecomp-resources')
0 files changed, 0 insertions, 0 deletions