diff options
author | Jan Djärv <jan.h.d@swipnet.se> | 2011-12-21 09:04:19 +0100 |
---|---|---|
committer | Jan Djärv <jan.h.d@swipnet.se> | 2011-12-21 09:04:19 +0100 |
commit | 204ee57fa0bb286ba4c6f540cefb44ed011a921f (patch) | |
tree | ad3751bd5677a04fb731108cdeaaf74ca55d05bb /src/nsmenu.m | |
parent | bc86f573eecb9067dfb73c612309a909332bb15d (diff) | |
download | emacs-204ee57fa0bb286ba4c6f540cefb44ed011a921f.tar.gz |
Fix biggest memory leaks in NS-port. More remain.
* emacs.c (ns_pool): New variable.
(main): Assign ns_pool.
(Fkill_emacs): Call ns_release_autorelease_pool.
* nsfns.m (x_set_background_color): Assign return value from
ns_index_color to face-background instead of NSColor*.
(ns_implicitly_set_icon_type): Fix indentation.
Change assignment in for loop to comparison.
* nsfont.m (ns_spec_to_descriptor): Fix indentation,
autorelease fdesc, release fdAttrs and tdict.
(ns_get_covering_families): Release charset.
(ns_findfonts): Release NSFontDescriptor created with new.
(ns_uni_to_glyphs): Fix indentation.
(setString): Release attrStr before assigning new value.
* nsmenu.m (ns_update_menubar): Call free_menubar_widget_value_tree
before returning.
* nsterm.m (x_free_frame_resources): Release
f->output_data.ns->miniimage
(ns_index_color): Fix indentation. Do not retain
color_table->colors[i].
Diffstat (limited to 'src/nsmenu.m')
-rw-r--r-- | src/nsmenu.m | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/nsmenu.m b/src/nsmenu.m index d599cdb6ce5..94c6b6a6198 100644 --- a/src/nsmenu.m +++ b/src/nsmenu.m @@ -404,6 +404,7 @@ ns_update_menubar (struct frame *f, int deep_p, EmacsMenu *submenu) items = FRAME_MENU_BAR_ITEMS (f); if (NILP (items)) { + free_menubar_widget_value_tree (first_wv); [pool release]; UNBLOCK_INPUT; return; @@ -431,6 +432,7 @@ ns_update_menubar (struct frame *f, int deep_p, EmacsMenu *submenu) if (i == n) { + free_menubar_widget_value_tree (first_wv); [pool release]; UNBLOCK_INPUT; return; |