[PATCH 2/3] crypt32: Fix output buffer handling for CRYPT_STRING_BINARY case.
Nikolay Sivov
nsivov at codeweavers.com
Wed Sep 26 05:09:53 CDT 2018
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
dlls/crypt32/base64.c | 17 +++++++----------
1 file changed, 7 insertions(+), 10 deletions(-)
diff --git a/dlls/crypt32/base64.c b/dlls/crypt32/base64.c
index e25e4c10ff..5caab97b17 100644
--- a/dlls/crypt32/base64.c
+++ b/dlls/crypt32/base64.c
@@ -77,23 +77,20 @@ static BOOL EncodeBinaryToBinaryA(const BYTE *pbBinary,
{
BOOL ret = TRUE;
- if (*pcchString < cbBinary)
+ if (pszString)
{
- if (!pszString)
- *pcchString = cbBinary;
- else
+ if (*pcchString < cbBinary)
{
SetLastError(ERROR_INSUFFICIENT_BUFFER);
- *pcchString = cbBinary;
ret = FALSE;
}
- }
- else
- {
- if (cbBinary)
+ else if (cbBinary)
memcpy(pszString, pbBinary, cbBinary);
- *pcchString = cbBinary;
}
+ else
+
+ *pcchString = cbBinary;
+
return ret;
}
--
2.19.0
More information about the wine-devel
mailing list