Module: wine Branch: master Commit: 87416f5a3b079f81a62a16672e1cf355a3da477a URL: http://source.winehq.org/git/wine.git/?a=commit;h=87416f5a3b079f81a62a16672e... Author: Alexandre Julliard <julliard(a)winehq.org> Date: Wed Apr 7 23:07:43 2010 +0200 crypt32: Fix computation of structure sizes in CRYPT_AsnDecodeSequence. --- dlls/crypt32/decode.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/dlls/crypt32/decode.c b/dlls/crypt32/decode.c index fb3d36e..655a5b2 100644 --- a/dlls/crypt32/decode.c +++ b/dlls/crypt32/decode.c @@ -523,9 +523,11 @@ static BOOL CRYPT_AsnDecodeSequence(struct AsnDecodeSequenceItem items[], for (i = 0; i < cItem; i++) { - bytesNeeded += items[i].size; + if (items[i].size > items[i].minSize) + bytesNeeded += items[i].size - items[i].minSize; structSize = max( structSize, items[i].offset + items[i].minSize ); } + bytesNeeded += structSize; if (pcbDecoded) *pcbDecoded = 1 + lenBytes + cbDecoded; if (!pvStructInfo)