From 7a33b61f343280fcc4e3b4fb986ad85f5454dbf1 Mon Sep 17 00:00:00 2001 From: Juan Lang Date: Thu, 15 Oct 2009 08:57:13 -0700 Subject: [PATCH] crypt32: Don't pass CRYPT_DECODE_ALLOC_FLAG to array item decoders. --- dlls/crypt32/decode.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dlls/crypt32/decode.c b/dlls/crypt32/decode.c index beb33f18e53..9da367bc4d4 100644 --- a/dlls/crypt32/decode.c +++ b/dlls/crypt32/decode.c @@ -671,7 +671,8 @@ static BOOL CRYPT_AsnDecodeArray(const struct AsnArrayDescriptor *arrayDesc, } if (ret) ret = arrayDesc->decodeFunc(ptr, itemEncoded, - dwFlags, NULL, &size, &itemDecoded); + dwFlags & ~CRYPT_DECODE_ALLOC_FLAG, NULL, &size, + &itemDecoded); if (ret) { cItems++; @@ -741,7 +742,8 @@ static BOOL CRYPT_AsnDecodeArray(const struct AsnArrayDescriptor *arrayDesc, *(BYTE **)((BYTE *)rgItems + i * arrayDesc->itemSize + arrayDesc->pointerOffset) = nextData; ret = arrayDesc->decodeFunc(ptr, - itemSizes[i].encodedLen, 0, + itemSizes[i].encodedLen, + dwFlags & ~CRYPT_DECODE_ALLOC_FLAG, (BYTE *)rgItems + i * arrayDesc->itemSize, &itemSizes[i].size, &itemDecoded); if (ret)