From aeea23a84dd54a64cda636d88c5d79b0ab4c8a9d Mon Sep 17 00:00:00 2001 From: stefan schippers Date: Sat, 29 Apr 2023 11:02:23 +0200 Subject: [PATCH] load_sym_def(): fix a debug message possibly printing garbage due to uninitialized variable --- src/save.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/save.c b/src/save.c index 16a8980b..8c9950ce 100644 --- a/src/save.c +++ b/src/save.c @@ -3154,6 +3154,11 @@ int load_sym_def(const char *name, FILE *embed_fd) int symbols, sym_n_pins=0, generator; const char *cmd; + if(!name) { + dbg(0, "l_s_d(): Warning: name parameter set to NULL, returning with no action\n"); + return 0; + } + sympath[0] = '\0'; /* set to empty */ check_symbol_storage(); symbol = xctx->sym; symbols = xctx->symbols; @@ -3197,7 +3202,7 @@ int load_sym_def(const char *name, FILE *embed_fd) } if(lcc[level].fd==NULL) { /* issue warning only on top level symbol loading */ - if(recursion_counter == 1) dbg(0, "l_s_d(): Symbol not found: %s\n",sympath); + if(recursion_counter == 1) dbg(0, "l_s_d(): Symbol not found: %s\n", name); my_snprintf(sympath, S(sympath), "%s/%s", tclgetvar("XSCHEM_SHAREDIR"), "systemlib/missing.sym"); if((lcc[level].fd=fopen(sympath, fopen_read_mode))==NULL) {