From: Jon Trulson Date: Sat, 31 Aug 2013 23:18:53 +0000 (-0600) Subject: dtinfogen_worker: don't free variables then use them later. X-Git-Tag: 2.2.1~26 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=c6f1d5ac058dc476b35d9465c64f0e1cb86448dd;p=oweals%2Fcde.git dtinfogen_worker: don't free variables then use them later. In several places, variables were XFree()'d, but then used in system() commands later. This would cause various issues - on my system, I'd get: sh: 1: Syntax error: EOF in backquote substitution system for rm failed; exiting... while building the guides. --- diff --git a/cde/programs/dtinfo/dtinfogen/infolib/etc/dtinfogen_worker.c b/cde/programs/dtinfo/dtinfogen/infolib/etc/dtinfogen_worker.c index 19d241d3..35b21484 100644 --- a/cde/programs/dtinfo/dtinfogen/infolib/etc/dtinfogen_worker.c +++ b/cde/programs/dtinfo/dtinfogen/infolib/etc/dtinfogen_worker.c @@ -1498,11 +1498,10 @@ buildBookcase(char *cmdSrc, char *dirName) style_file, bookCaseName, bookCaseName); runShellCmd(cmd); - XtFree((char*)style_file); - snprintf(cmd, sizeof(cmd), "rm -f %s", style_file); ret1 = system(cmd); if(ret1 != 0) die(-1, "system for rm failed; exiting...\n"); + XtFree((char*)style_file); } @@ -1519,11 +1518,10 @@ buildBookcase(char *cmdSrc, char *dirName) compress_file, bookCaseName, bookCaseName); runShellCmd(cmd); - XtFree((char*)compress_file); - snprintf(cmd, sizeof(cmd), "rm -f %s", compress_file); ret1 = system(cmd); if(ret1 != 0) die(-1, "system for rm failed; exiting...\n"); + XtFree((char*)compress_file); } @@ -1540,11 +1538,10 @@ buildBookcase(char *cmdSrc, char *dirName) runShellCmd(cmd); - XtFree((char*)anonym_file); - snprintf(cmd, sizeof(cmd), "rm -f %s", anonym_file); ret1 = system(cmd); if(ret1 != 0) die(-1, "system for rm failed; exiting...\n"); + XtFree((char*)anonym_file); } validateBookCase(bookCaseMap, bookCaseName); @@ -1656,11 +1653,10 @@ storeBookCase(char *cmdSrc, char *tocOpt, char *dbName, nsgmls_file, tocOpt, dbName, dirName, tmpFile); runShellCmd(cmd); - XtFree((char*)nsgmls_file); - cmd = buildPath("rm -f %s", nsgmls_file); ret = system(cmd); if(ret != 0) die(-1, "system for rm failed; exiting...\n"); + XtFree((char*)nsgmls_file); } XtFree(cmd);