void finalize_menu_mixer(struct menu_mixer *self) { del_menu_observer(&self->menu_observer); if (self->music) { stop_music(self->mixer); unload_music(self->mixer); } }
void close_menu_renderer(struct menu_renderer *self) { struct menu_iterator iter; menu_renderer_on_focus_out(&self->menu_observer); del_menu_observer(&self->menu_observer); finalize_menu_renderer_entries(self); setup_menu_iterator(&iter, self->menu); while (menu_iterator_has_next(&iter)) { struct menu_entry *entry = menu_iterator_next(&iter); b6_deallocate(&b6_std_allocator, entry->cookie); } self->menu = NULL; }