fix a leak in devmodtranslate 3 terminal section

This commit is contained in:
dwarning
2012-11-06 20:56:27 +01:00
parent a4e0cfe341
commit 44786a490b
+7
View File
@@ -1882,12 +1882,16 @@ devmodtranslate(struct line *deck, char *subname, wordlist * const submod)
case 'z': /* hfet, mesa */
name = gettok(&t);
(void) sprintf(buffer, "%s ", name);
tfree(name);
name = gettok(&t);
(void) sprintf(buffer + strlen(buffer), "%s ", name);
tfree(name);
name = gettok(&t);
(void) sprintf(buffer + strlen(buffer), "%s ", name);
tfree(name);
name = gettok(&t);
(void) sprintf(buffer + strlen(buffer), "%s ", name);
tfree(name);
name = gettok(&t);
wlsub = wl_find(name, submod);
@@ -1897,6 +1901,7 @@ devmodtranslate(struct line *deck, char *subname, wordlist * const submod)
else
(void) sprintf(buffer + strlen(buffer), "%s:%s ", subname, name);
tfree(name);
(void) strcat(buffer, t);
tfree(s->li_line);
s->li_line = buffer;
@@ -2078,6 +2083,8 @@ devmodtranslate(struct line *deck, char *subname, wordlist * const submod)
else
(void) sprintf(buffer + strlen(buffer), "%s:%s ", subname, name);
tfree(name);
(void) strcat(buffer, t);
tfree(s->li_line);
s->li_line = buffer;