X-Git-Url: http://www.privoxy.org/gitweb/?p=privoxy.git;a=blobdiff_plain;f=cgisimple.c;h=e1a893be9e866caad0f6a1bec99368d49ec8c688;hp=4339ecd01199a8baeaf64cca8628c95d2742d6b6;hb=9204f26188695b8d8c2b68d4516c6090a4607db9;hpb=1a3ce9d8821ddcf8ca6fa67a966052f7a0a6b20a diff --git a/cgisimple.c b/cgisimple.c index 4339ecd0..e1a893be 100644 --- a/cgisimple.c +++ b/cgisimple.c @@ -404,6 +404,7 @@ jb_err cgi_show_client_tags(struct client_state *csp, snprintf(buf, sizeof(buf), "%u", csp->config->client_tag_lifetime); if (map(exports, "refresh-delay", 1, buf, 1)) { + freez(client_tag_status); free_map(exports); return JB_ERR_MEMORY; } @@ -413,6 +414,7 @@ jb_err cgi_show_client_tags(struct client_state *csp, err = map_block_killer(exports, "tags-expire"); if (err != JB_ERR_OK) { + freez(client_tag_status); return err; } } @@ -1280,26 +1282,28 @@ jb_err cgi_show_status(struct client_state *csp, #endif /* ndef FEATURE_STATISTICS */ #ifdef FEATURE_EXTENDED_STATISTICS + if (!err) { char *block_reason_statistics = get_block_reason_statistics_table(csp); if (block_reason_statistics != NULL) { - if (!err) err = map(exports, "block-reason-statistics", 1, block_reason_statistics, 0); + err = map(exports, "block-reason-statistics", 1, block_reason_statistics, 0); } else { - if (!err) err = map_block_killer(exports, "extended-statistics"); + err = map_block_killer(exports, "extended-statistics"); } } + if (!err) { char *filter_statistics = get_filter_statistics_table(csp); if (filter_statistics != NULL) { - if (!err) err = map(exports, "filter-statistics", 1, filter_statistics, 0); + err = map(exports, "filter-statistics", 1, filter_statistics, 0); } else { - if (!err) err = map_block_killer(exports, "extended-statistics"); + err = map_block_killer(exports, "extended-statistics"); } } #else /* ndef FEATURE_EXTENDED_STATISTICS */ @@ -1346,9 +1350,9 @@ jb_err cgi_show_status(struct client_state *csp, if (!err) err = string_append(&s, "\n"); } } - if (*s != '\0') + if (!err && *s != '\0') { - if (!err) err = map(exports, "actions-filenames", 1, s, 0); + err = map(exports, "actions-filenames", 1, s, 0); } else { @@ -1373,9 +1377,9 @@ jb_err cgi_show_status(struct client_state *csp, if (!err) err = string_append(&s, "\n"); } } - if (*s != '\0') + if (!err && *s != '\0') { - if (!err) err = map(exports, "re-filter-filenames", 1, s, 0); + err = map(exports, "re-filter-filenames", 1, s, 0); } else { @@ -2092,6 +2096,22 @@ static jb_err show_defines(struct map *exports) 1, #else 0, +#endif + }, + { + "FEATURE_EXTENDED_STATISTICS", +#ifdef FEATURE_EXTENDED_STATISTICS + 1, +#else + 0, +#endif + }, + { + "FEATURE_PCRE_HOST_PATTERNS", +#ifdef FEATURE_PCRE_HOST_PATTERNS + 1, +#else + 0, #endif } };