Juan Lang : crypt32: Don' t assume string pointer has been set if length is 0.
Alexandre Julliard
julliard at winehq.org
Mon Oct 22 09:55:29 CDT 2007
Module: wine
Branch: master
Commit: d34b3bf63c4c4b74c2ee9683e73a5b37e3b0b2cf
URL: http://source.winehq.org/git/wine.git/?a=commit;h=d34b3bf63c4c4b74c2ee9683e73a5b37e3b0b2cf
Author: Juan Lang <juan.lang at gmail.com>
Date: Sat Oct 20 14:24:10 2007 -0700
crypt32: Don't assume string pointer has been set if length is 0.
---
dlls/crypt32/encode.c | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/crypt32/encode.c b/dlls/crypt32/encode.c
index 5c2b9be..c3d7209 100644
--- a/dlls/crypt32/encode.c
+++ b/dlls/crypt32/encode.c
@@ -913,8 +913,12 @@ static BOOL CRYPT_AsnEncodeBMPString(const CERT_NAME_VALUE *value,
LPCWSTR str = (LPCWSTR)value->Value.pbData;
DWORD bytesNeeded, lenBytes, strLen;
- strLen = value->Value.cbData ? value->Value.cbData / sizeof(WCHAR) :
- lstrlenW(str);
+ if (value->Value.cbData)
+ strLen = value->Value.cbData / sizeof(WCHAR);
+ else if (value->Value.pbData)
+ strLen = lstrlenW(str);
+ else
+ strLen = 0;
CRYPT_EncodeLen(strLen * 2, NULL, &lenBytes);
bytesNeeded = 1 + lenBytes + strLen * 2;
if (!pbEncoded)
More information about the wine-cvs
mailing list