From ba6dd7b1afd98db735f5ae6461daea6e110e747e Mon Sep 17 00:00:00 2001 From: h_vogt Date: Sat, 15 Dec 2012 20:03:57 +0100 Subject: [PATCH] main.c, inperror.c: unify errMsg --- src/main.c | 2 +- src/spicelib/parser/inperror.c | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main.c b/src/main.c index 1ade240b4..7f908acec 100644 --- a/src/main.c +++ b/src/main.c @@ -106,7 +106,7 @@ char *ft_rawfile = "rawspice.raw"; IFsimulator *ft_sim = NULL; char *errRtn; /* name of the routine declaring error */ -char *errMsg; /* descriptive message about what went wrong */ +char *errMsg = NULL; /* descriptive message about what went wrong */ char *cp_program; /* program name 'ngspice' */ diff --git a/src/spicelib/parser/inperror.c b/src/spicelib/parser/inperror.c index 86af46d26..c06efef73 100644 --- a/src/spicelib/parser/inperror.c +++ b/src/spicelib/parser/inperror.c @@ -27,16 +27,15 @@ extern int vasprintf(char **out, const char *fmt, va_list ap); char *INPerror(int type) { - const char *val; + char *val; char *ebuf; /*CDHW Lots of things set errMsg but it is never used so let's hack it in CDHW*/ if ( errMsg ) { val = errMsg; - errMsg = NULL; } else /*CDHW end of hack CDHW*/ - val = SPerror(type); + val = copy(SPerror(type)); if (!val) return NULL; @@ -55,6 +54,6 @@ char *INPerror(int type) sprintf(ebuf, "%s\n", val); } #endif /* HAVE_ASPRINTF */ - FREE(errMsg); /* pn: really needed ? */ + tfree(val); return ebuf; }