Example #1
0
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();
}
Example #2
0
/**
 * 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);
}