Module: wine Branch: master Commit: f8f9dbbbe7de084fb9751abd4b523d357b605843 URL: http://source.winehq.org/git/wine.git/?a=commit;h=f8f9dbbbe7de084fb9751abd4b...
Author: Rob Shearman rob@codeweavers.com Date: Fri Feb 15 10:06:32 2008 +0000
wininet: Fix an off-by-one error in the boundary checks in HTTP_DecodeBase64.
---
dlls/wininet/http.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c index 0245d2b..083eda6 100644 --- a/dlls/wininet/http.c +++ b/dlls/wininet/http.c @@ -1129,9 +1129,9 @@ static UINT HTTP_DecodeBase64( LPCWSTR base64, LPSTR bin ) { signed char in[4];
- if (base64[0] > ARRAYSIZE(HTTP_Base64Dec) || + if (base64[0] >= ARRAYSIZE(HTTP_Base64Dec) || ((in[0] = HTTP_Base64Dec[base64[0]]) == -1) || - base64[1] > ARRAYSIZE(HTTP_Base64Dec) || + base64[1] >= ARRAYSIZE(HTTP_Base64Dec) || ((in[1] = HTTP_Base64Dec[base64[1]]) == -1)) { WARN("invalid base64: %s\n", debugstr_w(base64));