void clean_up( void ) { sound_free(); game_list_free(); submenu_free(); platform_free(); menu_free(); hint_free(); font_free(); bg_free(); location_free(); event_free(); snap_free(); video_free(); sdl_free(); }
/** * Free a gateway buffer * * @param buf The buffer to free */ void gwbuf_free(GWBUF *buf) { BUF_PROPERTY *prop; buffer_object_t* bo; CHK_GWBUF(buf); if (atomic_add(&buf->sbuf->refcount, -1) == 1) { free(buf->sbuf->data); free(buf->sbuf); bo = buf->gwbuf_bufobj; while (bo != NULL) { bo = gwbuf_remove_buffer_object(buf, bo); } } while (buf->properties) { prop = buf->properties; buf->properties = prop->next; free(prop->name); free(prop->value); free(prop); } /** Release the hint */ while (buf->hint) { HINT* h = buf->hint; buf->hint = buf->hint->next; hint_free(h); } free(buf); }