Код:
public bool show_menu()
{
if (GLib.MainContext.current_source().is_destroyed()) return false;
Gtk.Menu menuw = new Gtk.Menu.from_model(menu);
MenuMaker.apply_menu_properties(menuw.get_children(),menu);
menuw.attach_to_widget(this,null);
menuw.popup(null,null,menu_position_func,
0, Gdk.CURRENT_TIME);
menuw.focus_out_event.connect((event)=>{menuw.destroy();return false;});
show_system_menu_idle = 0;
return false;
}
Течет где-то либо в этой функции, либо во внутренностях. Но факт тот, что после ее выполнение занятая память увеличивается на 4 мб. И не освобождается потом совсем.