Commit Graph

234 Commits

Author SHA1 Message Date
Michael Stefaniuc 0c07d3ba37 oleaut32: Use FAILED instead of !SUCCEEDED. 2008-10-08 13:43:22 +02:00
Aric Stewart 3b3ed7a020 oleaut32: In variants check bOverflow to make sure not to accidently overun static buffers in an overflow case (Coverity 313). 2008-10-07 15:22:30 +02:00
Michael Stefaniuc f830a12ddb oleaut32: Remove redundant NULL check before SysFreeString (Smatch). 2008-09-25 11:18:59 +02:00
Rob Shearman e57697a04b oleaut32: Fix testing of HRESULT types with not operator instead of comparing against S_OK.
This makes it more obvious what the code is doing.
2008-08-18 17:34:12 +02:00
Michael Karcher abaac300d1 oleaut32: Cache localised number chars. 2008-05-19 20:19:52 +02:00
Austin English aab8fae59a Spelling fixes. 2008-04-21 14:25:05 +02:00
Austin English e8dbd66c23 oleaut32: Spelling fixes. 2008-04-14 21:28:38 +02:00
Andrew Talbot 9d16a42210 oleaut32: Assign to structs instead of using memcpy. 2008-03-12 11:59:27 +01:00
Francois Gouget 44b52b128c Assorted spelling fixes. 2008-01-16 12:48:29 +01:00
Alexandre Julliard a7f4e8bf74 oleaut32: Properly initialize the result variant in VarImp. 2007-10-29 13:53:40 +01:00
Alex Villacís Lasso 38079e0744 oleaut32: Support for VT_DISPATCH in VarRound. 2007-06-05 12:20:46 +02:00
Alex Villacís Lasso 7f84b91bff oleaut32: Support for VT_DISPATCH in VarNeg. 2007-06-05 12:20:37 +02:00
Alex Villacís Lasso f1b44b36e4 oleaut32: Support for VT_DISPATCH in VarInt. 2007-06-05 12:20:28 +02:00
Alex Villacís Lasso bd7de42787 oleaut32: Support for VT_DISPATCH in VarFix. 2007-06-05 12:20:18 +02:00
Alex Villacís Lasso 2ebe12397f oleaut32: Support for VT_DISPATCH in VarNot. 2007-06-05 12:20:08 +02:00
Alex Villacís Lasso 932fcac150 oleaut32: Support for VT_DISPATCH in VarAbs. 2007-06-05 12:19:31 +02:00
Francois Gouget fa48cb042c Assorted spelling fixes. 2007-05-29 13:47:18 +02:00
Jason Edmeades 94b9b6146d oleaut32: Convert to VT_DECIMAL fails with overflow (with test). 2007-04-03 11:32:57 +02:00
Andrew Talbot d6fc116475 oleaut32: Declare some items static. 2007-01-22 12:08:55 +01:00
Alex Villacís Lasso 1c85155eaa oleaut32: Support for VT_DISPATCH in VarImp. 2007-01-03 11:49:16 +01:00
Alex Villacís Lasso e02b224d57 oleaut32: Support for VT_DISPATCH in VarPow. 2007-01-03 11:48:47 +01:00
Alex Villacís Lasso 90844e2067 oleaut32: Support for VT_DISPATCH in VarMod. 2007-01-03 11:48:13 +01:00
Alex Villacís Lasso cdceb02319 oleaut32: Support for VT_DISPATCH in VarIdiv. 2007-01-03 11:44:42 +01:00
Alex Villacís Lasso 5aacee9550 oleaut32: Support for VT_DISPATCH in VarXor. 2007-01-03 11:44:03 +01:00
Alex Villacís Lasso e98a49dee4 oleaut32: Support for VT_DISPATCH in VarOr. 2007-01-03 11:43:29 +01:00
Alex Villacís Lasso a5e3a999ea oleaut32: Support for VT_DISPATCH in VarSub. 2007-01-03 11:42:33 +01:00
Alex Villacís Lasso 67c9b7cbb8 oleaut32: Support for VT_DISPATCH in VarDiv. 2007-01-03 11:41:46 +01:00
Alex Villacís Lasso 01395dec51 oleaut32: Support for VT_DISPATCH in VarMul. 2007-01-03 11:40:11 +01:00
Alex Villacís Lasso 308a0b2e18 oleaut32: Support for VT_DISPATCH in VarAdd. 2007-01-03 11:39:11 +01:00
Alex Villacís Lasso 97d13c552c oleaut32: Support for VT_DISPATCH in VarAnd. 2007-01-03 11:37:31 +01:00
Alex Villacís Lasso 4245cbb31c oleaut32: Add wrapper for dereferencing a VARIANT of type VT_DISPATCH and returning the VARIANT value. 2007-01-03 11:35:37 +01:00
Alex Villacís Lasso c290f623e0 oleaut32: Fix VarMod(VT_DECIMAL) test by properly initializing the DECIMAL to use.
Fix Wine handling of VT_DECIMAL in VarMod.
2006-12-26 13:25:03 +01:00
Dmitry Timoshkov 601bf6ea12 oleaut32: Make some data const and static. 2006-11-28 12:36:20 +01:00
Alex Villacís Lasso 3f593aa622 oleaut32: variant - allow conversion of VT_DISPATCH into VT_BSTR in VarCat. 2006-11-08 15:50:55 +01:00
Francois Gouget ef998ea6cb Assorted spelling fixes. 2006-10-16 11:33:38 +02:00
Hans Leidekker ce66f5d684 oleaut32: Win64 printf format warning fixes. 2006-10-13 12:08:47 +02:00
Francois Gouget dd28d5be08 Tweak TRACE()s to simplify '\n' checks. 2006-10-06 17:29:27 +02:00
Benjamin Arai 4cb6c9184b oleaut32: Implementation for function variant:VarImp. 2006-09-21 11:25:41 +02:00
Benjamin Arai ed64999180 oleaut32: Fixes for function variant:VarIdiv. 2006-09-12 10:53:49 +02:00
Benjamin Arai aaca30cf03 oleaut32: Fixes for function variant:VarDiv. 2006-09-12 10:53:08 +02:00
Benjamin Arai fbf9cba683 oleaut32: Fixes for function variant:VarPow. 2006-09-08 12:54:59 +02:00
Benjamin Arai 3abb454c70 oleaut32: Fixes for function variant:VarAnd. 2006-09-08 12:52:14 +02:00
Francois Gouget 3eda8da2bd oleaut32: Fix spelling of VARIANT_NUMBER_CHARS's separator fields. 2006-09-08 11:03:00 +02:00
Stefan Leichter 220547708a oleaut32: Print 64bit integers with wine_dbgstr_longlong. 2006-08-22 11:59:38 +02:00
Benjamin Arai 9634ffa7dc oleaut32: VarSub: Fixes several data types and corrects error codes. 2006-07-28 12:56:45 +02:00
Benjamin Arai 4026a4c0a8 oleaut32: Fix temp variant initialization issues in VarCat. 2006-07-21 13:40:32 +02:00
Benjamin Arai 911af4dce9 oleaut32: Update error codes for VarMod. 2006-07-19 09:38:50 +02:00
Benjamin Arai d42002b72c oleaut32: VarCmp - Corrected function description. 2006-07-18 11:10:15 +02:00
Benjamin Arai 700adac9ac oleaut32: Conformance test and patch for VarCat. 2006-07-11 17:14:58 +02:00
qingdoa daoo 5e09c29867 oleaut32: Copying a NULL BSTR should result in an empty BSTR in VariantCopy. 2006-07-10 11:52:45 +02:00
Robert Shearman 123592f0c3 oleaut32: Fix parsing of hex numbers with 'e' in the string by moving
the exponent parsing to after the hex digit parsing.
2006-07-03 11:33:23 +02:00
Robert Shearman b5bff92a0c oleaut32: Uncomment a line to implement conversion from VT_DISPATCH to VT_BSTR. 2006-06-08 11:11:01 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Huw Davies 2898b5d9ad oleaut32: Remove weird attempt to clear VT_VARIANT.
Add some tests.
2006-05-07 10:10:56 +02:00
Ulrich Czekalla 37f1d4cb54 oleaut32: Prevent freeing of random memory.
Don't assign type to variant until we're sure we are assigning a
value.
2006-02-02 13:18:43 +01:00
Michael Stefaniuc f73b68b016 oleaut32: Reimplement VarCmp().
- Supports now all WinXP allowed combinations of input variants.
- VT_RESERVED on input variants is handled now.
- Removed complicated VT_DATE comparision; that's not how Windows does it.
- Improved documentation.
2006-01-16 21:34:50 +01:00
Michael Stefaniuc e47b813fc6 oleaut32: Define missing but useful VTBIT_* macros. 2006-01-16 21:32:24 +01:00
Uwe Bonnes 87df07452a Extend VarCmp() and add test cases. 2005-11-03 13:21:11 +00:00
Robert Shearman 4381c62560 Fix a crash during +variant logging caused by a typo causing an array
to be one element less than expected.
2005-11-02 20:03:01 +00:00
Michael Stefaniuc 8ecefe9e93 Handle VT_DECIMAL in VarCmp(). 2005-10-28 10:08:31 +00:00
Michael Stefaniuc c64abfa374 Handle VT_CY in VarDiv(). 2005-10-26 12:05:39 +00:00
Alex Villacís Lasso 253f3bf5be Modify VarDiv() and VarSub() to use the existing VarDecSub() and
VarDecDiv() for DECIMAL.
2005-09-22 10:35:16 +00:00
Michael Stefaniuc 4d36546c07 - VarAdd, VarMul: I4 overflows to R8 and not I8 even if the result
would fit in I8. Fix tests.
- Document a brokeness in the handling of I8 numbers in
  VarNumFromParseNum. Fix tests.
2005-08-23 09:33:37 +00:00
Robert Shearman 27407fad35 Document active object and variant functions. 2005-07-05 11:02:19 +00:00
Robert Shearman cbc3af8ca5 - Conversions between variants types of the same size should ignore
overflows.
- Tests for this behaviour.
2005-06-29 20:15:32 +00:00
Michael Stefaniuc 8e81d45732 - VarCmp: handle comparision of VT_EMPTY with an integer
- small comment fix
2005-06-28 10:54:07 +00:00
Francois Gouget 6394a15314 Assorted spelling fixes. 2005-06-17 20:59:49 +00:00
Michael Stefaniuc 948dd66603 - Reimplement VarAdd, had missing functionality and wrong behaviour.
- Fix a typo in VarMul.
2005-05-29 20:00:31 +00:00
Michael Stefaniuc 0f64aaa807 Reimplement VarMul(). It can multiply now all variants that the native
(WinXP) function supports too.
2005-05-23 11:46:17 +00:00
Richard Cohen 97bc8f6dc7 - Remove unused macro.
- Check for VT_I8 before testing it.
- VarMod returns DISP_E_OVERFLOW not E_INVALIDARG.
2005-05-23 10:26:32 +00:00
Michael Stefaniuc 28faa92c7f Fix VariantChangeType: calls to VarDecFromCy and VarDecFromDisp had
source and destination swapped.
2005-05-23 09:50:50 +00:00
Daniel Remenak 4d7e99df93 Implemented VarIdiv. 2005-04-13 10:59:25 +00:00
Daniel Remenak 292b61f550 Return DISP_E_DIVBYZERO instead of crashing when asked to divide a
variant by zero.
2005-04-12 10:15:56 +00:00
Jon Griffiths 743fb99a9f Use variant macros instead of accessing the union directly. 2005-02-22 14:54:01 +00:00
Alex Villacís Lasso d0bdb3888b Initialize temporary variants before calling VariantChangeTypeEx. 2005-01-25 18:57:43 +00:00
Alex Villacís Lasso ed9a359402 When parsing an hex/oct integer value, copy value verbatim in VARIANT,
rather than a negated value. Add test case for this behavior.
2005-01-17 19:34:58 +00:00
Eric Pouech cf1d00bb08 Removed excessive statement (break after return or goto, not useful
break, not needed vars...)
2005-01-09 16:42:53 +00:00
Francois Gouget 6fb1a20020 Assorted spelling fixes. 2004-12-20 19:27:06 +00:00
Robert Shearman cd0970eb24 Make the DECIMAL_SETZERO macro take a DECIMAL instead of a DECIMAL* as
in the Microsoft headers and fix up the only caller.
2004-12-08 13:59:52 +00:00
Walt Ogburn f61786d444 VarParseNumFromStr: Keep zeros after decimal point, correctly keep
track of trailing zeros in a decimal number.
VarNumFromParseNum: Don't error on decimal expressions for zero.
2004-10-21 19:55:37 +00:00
Walt Ogburn 84c1f667ae Keep "trailing" zeros on whole number part of a decimal.
Add an example of this to tests.
2004-10-19 21:08:40 +00:00
Walt Ogburn d5cf83317e Allow exponents of zero (like "1.000E0") to parse
correctly. Previously, they caused DISP_E_TYPEMISMATCH.
2004-10-11 20:53:29 +00:00
Huw Davies 76c5590bfb Don't trash the dst variant if we can't do the type conversion.
Add a test for this.
2004-09-22 19:12:18 +00:00
Jacek Caban 3a2574e3cc Fix handling of VARIANT with VT_BYREF and null pointer in
VariantChangeTypeEx.
2004-08-25 00:38:59 +00:00
Alexandre Julliard 25e2a320a7 Don't define BEGIN_INTERFACE in unknwn.h. 2004-08-22 21:38:46 +00:00
Francois Gouget bf72af30d0 Modify widl to put the C COM macros inside an #ifdef COBJMACROS block
as is done in the Windows headers.
Add #define COBJMACROS where needed in Wine.
Fixes the compilation of the oleaut32/tests/olefont.c and
urlmon/tests/url.c conformance tests with the Windows headers.
2004-08-11 19:43:45 +00:00
Mike Hearn f349cbb72b Move variant code to its own debug channel. 2004-07-04 00:09:11 +00:00
Jon Griffiths 89450e7cbd Implement VarDateFromUdateEx. 2004-04-30 18:32:58 +00:00
Jon Griffiths befb3a9980 Implement VarOr.
Fixes for untested VarXor,VarAbs,VarNot input types.
2004-04-27 23:29:37 +00:00
Jon Griffiths 9b609135e1 Conversion from VT_UINT to VT_I4 ignores overflow. 2004-04-23 21:29:49 +00:00
Francois Gouget 0217bfdfed Assorted spelling fixes. 2004-04-12 22:08:23 +00:00
Jon Griffiths 743b75ab44 Implement VarXor and simplify VarEqv to use it. 2004-03-22 20:39:27 +00:00
Jon Griffiths 071e950344 Implement VarEqv. 2004-03-17 20:49:22 +00:00
Fabian Cenedese 5feedfdc73 Let VarParseNumFromStr and VarNumFromParseNum cope with hex and oct
strings. Needed from VB conversions such as CLng, CInt, CByte...
2004-03-16 19:15:04 +00:00
Patrik Stridvall 8f9b09e947 Fixed some issues found by winapi_check. 2004-02-27 21:32:54 +00:00
Fabian Cenedese 3d7034e79e VarRound implementation (without type DECIMAL yet) with test function. 2004-02-26 05:27:11 +00:00
Alexandre Julliard b65d13605c Fixed callers of GetLocaleInfoW to use the correct buffer size. 2004-02-25 01:35:01 +00:00
Fabian Cenedese 393ae7d204 Accept VT_BOOL mixed with another type as valid combination in
VarOr/VarAnd.
2004-02-17 20:25:41 +00:00
Chris Morgan 2d1bccd0c4 Implement VarMod().
Add a few trace outputs.
Fix VarNot() with VT_CY.
Fix VarParseNumFromStr() to work correctly with NUMPRS_HEX_OCT flag.
2004-02-06 05:23:29 +00:00
Jon Griffiths f4e7227541 Implemented VarInt, VarFix, VarNeg. 2004-01-13 23:16:04 +00:00