From: Petr Špaček Date: Mon, 16 Apr 2018 11:59:04 +0000 (+0200) Subject: zimport: fix error reporting X-Git-Tag: v2.3.0~6^2~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=57ec7f2b4490c175ff67c9dd7e96262f0e33e64e;p=thirdparty%2Fknot-resolver.git zimport: fix error reporting --- diff --git a/daemon/zimport.c b/daemon/zimport.c index 45de989ac..24f3f3971 100644 --- a/daemon/zimport.c +++ b/daemon/zimport.c @@ -726,18 +726,18 @@ int zi_zone_import(struct zone_import_ctx *z_import, * so don't print error code as it meaningless. */ int res = zs_init(s, origin, rclass, ttl); if (res != 0) { - free(s); kr_log_error("[zscanner] error initializing zone scanner instance, error: %i (%s)\n", s->error.code, zs_strerror(s->error.code)); + free(s); return -1; } res = zs_set_input_file(s, zone_file); if (res != 0) { - zs_deinit(s); - free(s); kr_log_error("[zscanner] error opening zone file `%s`, error: %i (%s)\n", zone_file, s->error.code, zs_strerror(s->error.code)); + zs_deinit(s); + free(s); return -1; } @@ -745,9 +745,11 @@ int zi_zone_import(struct zone_import_ctx *z_import, * Parsing as well error processing will be performed in zi_state_parsing(). * Store pointer to zone import context for further use. */ if (zs_set_processing(s, NULL, NULL, (void *)z_import) != 0) { + kr_log_error("[zscanner] zs_set_processing() failed for zone file `%s`, " + "error: %i (%s)\n", + zone_file, s->error.code, zs_strerror(s->error.code)); zs_deinit(s); free(s); - kr_log_error("[zscanner] zs_set_input_file() fails\n"); return -1; }