crypt32: Check number of bytes returned by ReadFile and avoid a memory leak on error path. Part 2.
Dmitry Timoshkov
dmitry at baikal.ru
Tue Oct 29 02:09:05 CDT 2013
---
dlls/crypt32/object.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/dlls/crypt32/object.c b/dlls/crypt32/object.c
index 0ff1bfd..39955ce 100644
--- a/dlls/crypt32/object.c
+++ b/dlls/crypt32/object.c
@@ -52,7 +52,8 @@ static BOOL CRYPT_ReadBlobFromFile(LPCWSTR fileName, PCERT_BLOB blob)
{
DWORD read;
- ret = ReadFile(file, blob->pbData, blob->cbData, &read, NULL);
+ ret = ReadFile(file, blob->pbData, blob->cbData, &read, NULL) && read == blob->cbData;
+ if (!ret) CryptMemFree(blob->pbData);
}
}
CloseHandle(file);
--
1.8.4.1
More information about the wine-patches
mailing list