From 906dd79c643f99d9487b68adaeb4d1cad60e1e38 Mon Sep 17 00:00:00 2001 From: 7u83 <7u83@mail.ru> Date: Sun, 31 Jul 2022 21:42:48 +0200 Subject: [PATCH] Better error handling --- src/cw/cfg.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/cw/cfg.c b/src/cw/cfg.c index e994f70f..60665c70 100644 --- a/src/cw/cfg.c +++ b/src/cw/cfg.c @@ -335,13 +335,15 @@ int cw_cfg_read_from_file(FILE * f, cw_Cfg_t * cfg) p.f=f; int rc; + int errs=0; do { rc = cw_cfg_read_line(f,&p,key,val); if (rc==-1){ - fprintf(stderr,"Error: %s",p.error); + fprintf(stderr,"Error: %s\n",p.error); + errs++; } @@ -354,15 +356,17 @@ int cw_cfg_read_from_file(FILE * f, cw_Cfg_t * cfg) }while(rc==0); - return 0; + return errs; } int cw_cfg_load(const char *filename,cw_Cfg_t * cfg) { + int errs; FILE *f = fopen(filename,"rb"); if (!f) return errno; - cw_cfg_read_from_file(f,cfg); - return 0; + errs = cw_cfg_read_from_file(f,cfg); + fclose(f); + return errs; }