summaryrefslogtreecommitdiff
path: root/src/nsmenu.m
diff options
context:
space:
mode:
authorJan Djärv <jan.h.d@swipnet.se>2011-12-21 09:04:19 +0100
committerJan Djärv <jan.h.d@swipnet.se>2011-12-21 09:04:19 +0100
commit204ee57fa0bb286ba4c6f540cefb44ed011a921f (patch)
treead3751bd5677a04fb731108cdeaaf74ca55d05bb /src/nsmenu.m
parentbc86f573eecb9067dfb73c612309a909332bb15d (diff)
downloademacs-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.m2
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;