dtmail/DtMailRc.C: coverity CID 88975; use after free
This commit is contained in:
@@ -2015,6 +2015,7 @@ DtMail::MailRc::expand(char *name)
|
|||||||
register char *cp, *Shell;
|
register char *cp, *Shell;
|
||||||
int s, pivec[2];
|
int s, pivec[2];
|
||||||
struct stat sbuf;
|
struct stat sbuf;
|
||||||
|
char *retchr = NULL;
|
||||||
|
|
||||||
if (name[0] == '+' && getfolderdir(cmdbuf) >= 0) {
|
if (name[0] == '+' && getfolderdir(cmdbuf) >= 0) {
|
||||||
sprintf(xname, "%s/%s", cmdbuf, name + 1);
|
sprintf(xname, "%s/%s", cmdbuf, name + 1);
|
||||||
@@ -2084,9 +2085,10 @@ DtMail::MailRc::expand(char *name)
|
|||||||
goto err;
|
goto err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
retchr = strdup(xname);
|
||||||
delete [] xname;
|
delete [] xname;
|
||||||
delete [] cmdbuf;
|
delete [] cmdbuf;
|
||||||
return(strdup(xname));
|
return(retchr);
|
||||||
|
|
||||||
err:
|
err:
|
||||||
fflush(stderr);
|
fflush(stderr);
|
||||||
|
|||||||
Reference in New Issue
Block a user