Prevent forcezero from running on freed memory

pull/658/head
kaleb-himes 2016-12-08 15:11:41 -07:00
parent 55b1ced783
commit d2b5a9538d
1 changed files with 5 additions and 2 deletions

View File

@ -1197,6 +1197,7 @@ static int LoadKeyFile(byte** keyBuf, word32* keyBufSz,
if (saveBufSz < 0) { if (saveBufSz < 0) {
saveBufSz = 0; saveBufSz = 0;
free(saveBuf); free(saveBuf);
saveBuf = NULL;
} }
else else
ret = 0; ret = 0;
@ -1205,8 +1206,10 @@ static int LoadKeyFile(byte** keyBuf, word32* keyBufSz,
ForceZero(loadBuf, (word32)fileSz); ForceZero(loadBuf, (word32)fileSz);
free(loadBuf); free(loadBuf);
*keyBuf = saveBuf; if (saveBuf) {
*keyBufSz = (word32)saveBufSz; *keyBuf = saveBuf;
*keyBufSz = (word32)saveBufSz;
}
} }
else { else {
*keyBuf = loadBuf; *keyBuf = loadBuf;