Module: wine Branch: master Commit: 512a814efc3c6f84086ea4eb6b405f374f6753d9 URL: http://source.winehq.org/git/wine.git/?a=commit;h=512a814efc3c6f84086ea4eb6b...
Author: Michael Stefaniuc mstefani@redhat.de Date: Tue Jan 20 00:21:50 2015 +0100
oleaut32: Just stop instead of erroring out on 8 or 9 in octal numbers.
---
dlls/oleaut32/tests/vartest.c | 2 -- dlls/oleaut32/variant.c | 5 ++--- 2 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/dlls/oleaut32/tests/vartest.c b/dlls/oleaut32/tests/vartest.c index 118aa75..7ed4fd4 100644 --- a/dlls/oleaut32/tests/vartest.c +++ b/dlls/oleaut32/tests/vartest.c @@ -1383,11 +1383,9 @@ static void test_VarParseNumFromStr(void)
/* VB oct char bigger than 7 */ CONVERT("&o128", NUMPRS_HEX_OCT); - todo_wine { EXPECT(2,NUMPRS_HEX_OCT,0x40,4,3,0); EXPECTRGB(0,1); EXPECTRGB(1,2); - } EXPECTRGB(3,FAILDIG);
/** NUMPRS_PARENS **/ diff --git a/dlls/oleaut32/variant.c b/dlls/oleaut32/variant.c index 5a28acc..feba6c5 100644 --- a/dlls/oleaut32/variant.c +++ b/dlls/oleaut32/variant.c @@ -1736,9 +1736,8 @@ HRESULT WINAPI VarParseNumFromStr(OLECHAR *lpszStr, LCID lcid, ULONG dwFlags, } else { - if ((dwState & B_PROCESSING_OCT) && ((*lpszStr == '8') || (*lpszStr == '9'))) { - return DISP_E_TYPEMISMATCH; - } + if ((dwState & B_PROCESSING_OCT) && ((*lpszStr == '8') || (*lpszStr == '9'))) + break;
if (pNumprs->dwOutFlags & NUMPRS_DECIMAL) pNumprs->nPwr10--; /* Count decimal points in nPwr10 */