From d95797e17052b5a91373f8ea604365de9b2e5fd2 Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Tue, 29 Oct 2013 16:08:59 +0900 Subject: [PATCH] crypt32: Check number of bytes returned by ReadFile and avoid a memory leak on error path. --- dlls/crypt32/filestore.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/dlls/crypt32/filestore.c b/dlls/crypt32/filestore.c index 44b9bbb1c44..81c8c5e8233 100644 --- a/dlls/crypt32/filestore.c +++ b/dlls/crypt32/filestore.c @@ -119,7 +119,8 @@ static BOOL CRYPT_ReadBlobFromFile(HANDLE file, 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); } } return ret; -- 2.11.4.GIT