/* See LICENSE file for copyright and license details. */ #include "common.h" #ifndef TEST int liblog_destroy_context(struct liblog_context *ctx) { int ret = 0; if (!ctx) return 0; while (ctx->noutputs) ret |= liblog_destroy_output(&ctx->outputs[--ctx->noutputs]); free(ctx->outputs); ctx->outputs = NULL; if (ctx->internal_state) { free(ctx->internal_state->msg.prefix); free(ctx->internal_state->msg.text); free(ctx->internal_state); ctx->internal_state = NULL; } return ret; } #else int main(void) { struct liblog_context ctx; char *nullenv[] = {NULL}; environ = nullenv; ASSERT_ZERO(liblog_destroy_context(NULL)); ASSERT_ZERO(liblog_init_context(&ctx)); ASSERT_ZERO(liblog_destroy_context(&ctx)); return 0; } #endif