aboutsummaryrefslogtreecommitdiffstats
path: root/exec/exec.c
diff options
context:
space:
mode:
authorPo Lu2023-05-22 11:52:33 +0800
committerPo Lu2023-05-22 11:54:00 +0800
commit6f940c6a1183dd1660f35e6c82d33183a6892cb4 (patch)
tree5cbe8c7ca8e94f06b4f92267cf0bef3d8bb16fc6 /exec/exec.c
parentc297b828bb716885f92d3117c2abbb1ff21dbb08 (diff)
downloademacs-6f940c6a1183dd1660f35e6c82d33183a6892cb4.tar.gz
emacs-6f940c6a1183dd1660f35e6c82d33183a6892cb4.zip
Plug various leaks and fix input method initialization
* src/image.c (free_bitmap_record): Free bm->name correctly even if the display connection has been closed. * src/xfns.c (x_window): Use dpyinfo-specific `use_xim' flag. * src/xterm.c (use_xim): Remove global variable. (xim_destroy_callback): Free `xim_styles' if present, and set it to NULL to be on the safe side. (xim_open_dpy): Consult dpyinfo->use_xim instead. Don't leak `xim_styles' if an IM was previously opened. (xim_initialize): Use dpyinfo-specific `use_xim' flag. (xim_close_dpy): Check if `dpyinfo->xim_callback_data' is set before unregistering the instantiation callback. (x_term_init): Determine whether or not to use XIM for each display opened, instead of using the resources of the last display opened to toggle a global flag. (x_delete_terminal): Always call `image_destroy_all_bitmaps' and `xim_close_dpy'. Free storage used to hold bitmap records. * src/xterm.h (struct x_display_info): New field `use_xim'.
Diffstat (limited to 'exec/exec.c')
0 files changed, 0 insertions, 0 deletions