[oleaut32] implement VarMod() + tests, fix bug in VarNot()

Chris Morgan cmorgan at alum.wpi.edu
Thu Jan 29 21:30:00 CST 2004


* dlls/oleaut32/variant.c
Chris Morgan <cmorgan at alum.wpi.edu>
Implement VarMod().  Fix VarParseNumFromStr() to work correctly with 
NUMPRS_HEX_OCT flag.  Add a few trace outputs.  Fix VarNot() with VT_CY.

* dlls/oleaut32/tests/vartest.c
Chris Morgan <cmorgan at alum.wpi.edu>
Implement tests for VarMod().  Added char *vtstr() to enhance test debugging 
by returning a text string that corresponds to the inputted type.

Still have a couple of issues with this change.  I'm not sure why the (BSTR) 
tests fail under wine and not windows, I've wrappered them with todo_wine{} 
but they still get listed as failures.

I'm not sure if the fix to VarParseNumFromStr() is the most correct.  It does 
appear to be exactly what windows does, overwrite the characters in the 
buffer but lie and return an incorrect character count.

Also, testing the types in VarMod() results in some 700k additional tests and 
adds some time to the tests, something like 6 seconds on my machine.  Is this 
simply too much to test?  It certainly helped me nail down the types for 
VarMod().

Thanks,
Chris

-------------- next part --------------
A non-text attachment was scrubbed...
Name: variant.patch
Type: application/octet-stream
Size: 9201 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20040129/957b2f8e/variant.obj
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vartest.patch
Type: text/x-diff
Size: 17387 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-devel/attachments/20040129/957b2f8e/vartest.bin


More information about the wine-devel mailing list