From: Michael Tremer Date: Sat, 26 Oct 2024 10:48:10 +0000 (+0000) Subject: linter: Keep stats about how many warnings/errors/etc. X-Git-Tag: 0.9.30~859 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=86ffa293c2b1f8d380f4f773e90cb6b571b2cdb2;p=pakfire.git linter: Keep stats about how many warnings/errors/etc. Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/linter.c b/src/libpakfire/linter.c index 0e9cac5ec..f380fff4e 100644 --- a/src/libpakfire/linter.c +++ b/src/libpakfire/linter.c @@ -71,6 +71,15 @@ struct pakfire_linter { // Results TAILQ_HEAD(results, pakfire_linter_result) results; + // Stats + struct pakfire_linter_stats { + unsigned int results; + + // Count errors and warnings + unsigned int errors; + unsigned int warnings; + } stats; + // Result Callback pakfire_linter_result_callback result_callback; void* result_data; @@ -149,6 +158,22 @@ int pakfire_linter_result(struct pakfire_linter* linter, struct pakfire_file* fi // Store the result TAILQ_INSERT_TAIL(&linter->results, result, nodes); + // Update stats + linter->stats.results++; + + switch (priority) { + case PAKFIRE_LINTER_WARNING: + linter->stats.warnings++; + break; + + case PAKFIRE_LINTER_ERROR: + linter->stats.errors++; + break; + + default: + break; + } + // Call the callback if (linter->result_callback) { r = linter->result_callback(linter->ctx, linter->archive, linter->pkg,