コード例 #1
0
ファイル: vars-queue.c プロジェクト: mlewissmith/ifm-html
/*!
  @brief   Empty a queue.
  @ingroup queue_access
  @param   q Queue.
*/
void
vq_empty(vqueue *q)
{
    int i;

    VQ_CHECK(q);

    for (i = 1; i < q->entries; i++) {
        if (QVAL(q, i)->val != NULL)
            vs_destroy(QVAL(q, i)->val);
        V_DEALLOC(QVAL(q, i));
    }

    q->entries = 1;
}
コード例 #2
0
ファイル: rls_mod.c プロジェクト: 4N7HR4X/kamailio
void rls_mod_destroy(void)
{
	/*int i, cnt;
	char *s;*/

	DEBUG_LOG("RLS module cleanup\n");

	/* destroy used XCAP servers */
/*	DEBUG_LOG(" ... xcap servers\n");
	if (xcap_servers) {
		cnt = ptr_vector_size(xcap_servers);
		DEBUG_LOG(" count = %d\n", cnt);
		for (i = 0; i < cnt; i++) {
			s = ptr_vector_get(xcap_servers, i);
			if (s) {
				DEBUG_LOG(" ... freeing %s (%p)\n", s, s);
				cds_free(s);
			}
		}
		ptr_vector_destroy(xcap_servers);
		mem_free(xcap_servers);
		xcap_servers = NULL;
	} */

	DEBUG_LOG(" ... rls\n");
	rls_destroy();
	DEBUG_LOG(" ... vs\n");
	vs_destroy();

	DEBUG_LOG(" ... time event management\n");
	time_event_management_destroy();

	DEBUG_LOG(" %s: ... db\n", __func__);
	if (use_db) {
		if (rls_db && rls_dbf.close) rls_dbf.close(rls_db);
		rls_db = NULL;
	}

	DEBUG_LOG(" ... common libs\n");
	qsa_cleanup();

	/* ??? if other module uses this libraries it might be a problem ??? */
/*	xmlCleanupParser(); */
	DEBUG_LOG("RLS module cleanup finished\n");
}