From: leslie Date: Mon, 14 Jan 2008 20:13:21 +0000 (+0100) Subject: fix memory leak in key print X-Git-Tag: 0.9.0~33 X-Git-Url: http://www.vanbest.org/gitweb/?a=commitdiff_plain;h=89bffb7f2a84afdc049b17d3417f05fe65c0e72a;p=sasc-ng.git fix memory leak in key print --- diff --git a/data.c b/data.c index b8115e0..299b8d3 100644 --- a/data.c +++ b/data.c @@ -931,11 +931,14 @@ cPlainKey *cPlainKeys::ParseLine(char *line) cString cPlainKeys::KeyString(int Type, int Id, int Keynr) { cPlainKey *pk=NewFromType(Type); + char *s; if(pk) { pk->type=Type; pk->id=Id; pk->keynr=Keynr; - return cString::sprintf("%c %.*X %s",Type,pk->IdSize(),Id,*pk->PrintKeyNr()); + asprintf(&s,"%c %.*X %s",Type,pk->IdSize(),Id,*pk->PrintKeyNr()); + delete pk; } - return "unknown"; + else s=strdup("unknown"); + return cString(s,true); } void cPlainKeys::PostLoad(void)