Пример #1
0
static void StopEventHandler(KonohaContext *kctx)
{
	ResetSignal(kctx);
	struct EventContext *eventContext = ((KonohaFactory *)kctx->platApi)->eventContext;
	LocalQueue_Free(kctx, eventContext->queue);
	PLATAPI free_i(eventContext);
}
Пример #2
0
int main (void) {
    instruction *prog = parse_iter();
    interpret(optimize(prog));
    //interpret(prog);
    free_i(prog);
    return 0;
}
Пример #3
0
static void kFileStatus_Free(KonohaContext *kctx, kObject *o)
{
	kFileStatus *stat = (kFileStatus *)o;
	if(stat->stat != NULL) {
		PLATAPI free_i(stat->stat);
		stat->stat = NULL;
	}
}
Пример #4
0
static void free_i(instruction *prog) {
    while (prog) {
        if (prog->opcode == LOOP_START)
            free_i(prog->loop);
        instruction *t = prog;
        prog = prog->next;
        free(t);
    }
}
Пример #5
0
static void StopEventHandler(KonohaContext *kctx, void *args)
{
	KonohaFactory *factory = (KonohaFactory *)kctx->platApi;
	struct EventContext *eventContext = factory->EventModule.eventContext;
	if(eventContext != NULL) {
		eventContext->isWaiting = false;
		pthread_cond_signal(&eventContext->cond);
		pthread_mutex_destroy(&eventContext->lock);
		pthread_cond_destroy(&eventContext->cond);
		LocalQueue_Free(kctx, eventContext->queue);
		evhttp_free(eventContext->httpd);
		event_base_free(eventContext->base);
		PLATAPI free_i(eventContext);
		factory->EventModule.eventContext = NULL;
	}
}
Пример #6
0
static void LocalQueue_Free(KonohaContext *kctx, LocalQueue *queue)
{
	PLATAPI free_i(queue->list);
	PLATAPI free_i(queue);
}