static void free_chunked_context(chunked_context *ctx) { if ( ctx->stream->upstream ) Sset_filter(ctx->stream, NULL); PL_free(ctx); }
static void free_range_context(range_context *ctx) { if ( ctx->stream->upstream ) Sset_filter(ctx->stream, NULL); else PL_release_stream(ctx->stream); PL_free(ctx); }
static void free_cgi_context(cgi_context *ctx) { if ( ctx->stream->upstream ) Sset_filter(ctx->stream, NULL); else PL_release_stream(ctx->stream); if ( ctx->data ) free(ctx->data); if ( ctx->hook ) PL_erase(ctx->hook); if ( ctx->request ) PL_erase(ctx->request); if ( ctx->header ) PL_erase(ctx->header); if ( ctx->connection ) PL_unregister_atom(ctx->connection); ctx->magic = 0; PL_free(ctx); }