Commit Graph

288 Commits (3453746aa1353e84bbf6f8f7c2ff88f7d124f050)

Author SHA1 Message Date
Adam Gundy 962b81d607 Handle coercing VT_DISPATCH into VT_PTR. 2003-03-06 22:42:28 +00:00
Marcus Meissner 7ba0c5f3aa VarAdd: set 'rc' correctly from BSTR addition. 2003-03-04 02:14:32 +00:00
Marcus Meissner 84213a37ff Handle VT_PTR->VT_VARIANT arguments of Invoke. 2003-03-04 02:14:10 +00:00
Mike Hearn ea957415b0 Check both pointers in GetContainingTypeLib. 2003-02-26 04:36:03 +00:00
Marcus Meissner 7d2173a9e9 Do not free the old string in SysReAllocStringLen, reuse the old
string memory (if 'in' is NULL).
2003-01-28 00:30:29 +00:00
Marcus Meissner b3be773afe Added R4 and R8 comparison to VarCmp.
Added I2 to VarFormat.
Added VarSub, VarDiv, VarMul for integer and float types.
2003-01-28 00:23:19 +00:00
Alexandre Julliard 43690e9e47 Removed no longer needed inclusion of heap.h. 2003-01-24 00:54:58 +00:00
Matthew Davison 60009b9a56 Removed calls to HEAP_strdupAtoW. 2003-01-23 23:07:38 +00:00
Alexandre Julliard f8aa3b506c Added -Wpointer-arith gcc flag, and fixed the resulting warnings. 2003-01-23 21:32:35 +00:00
Marcus Meissner d0372b4e6e Fixed ICOM_CALLs for IFont_xx methods.
Added IPersistPropertyBag, IPersistStreamInit interfaces with stubs.
Implemented IDispatch::Invoke for the used DISPIDs.
2003-01-23 01:23:59 +00:00
Marcus Meissner 0df0304048 Print a large failure message if we try to load stdole32.tlb and
fail.
2003-01-21 19:29:33 +00:00
Francois Gouget 18e6bb81e3 Fix the case of floats in VarBstrFromR4, VarBstrFromR8 and
VarBstrFromCy.
We cannot check for equality of floats or doubles because of rounding
errors. Check equality to 14 digits for doubles.
Add more precision to the expected results so that they match actual
results.
Print floating values with more precision so we know what went wrong.
Specify the locale for all variant functions that depend on it.
Added return codes for Win95. Win95 returns dates with only two digits
for the year.
Uncommented more VariantCopyInd and VariantChangeTypeEx tests.
2003-01-13 18:30:18 +00:00
Marcus Meissner fe483aae1d Coerce VT_UNKNOWN <-> VT_DISPATCH, NULL is valid in these cases.
Drop VT_x -> VT_x coercions, they are handled before the switch()
already.
2003-01-11 20:58:58 +00:00
Marcus Meissner d5e60ea373 Convert VT_DISPATCH variants into VT_USERDEFINED/TKIND_DISPATCH and
TKIND_INTERFACE targets, Query IID_IDispatch if necessary.
2003-01-11 20:58:35 +00:00
Marcus Meissner 728bedcfc6 Added GIF decompressor support to OLE Automation IPictures. 2003-01-09 06:04:33 +00:00
Dan Kegel 0fd521fee3 Change RECT to use LONG to match win32 standard headers and fix format
strings to use %ld for RECT elements.
2003-01-08 21:09:25 +00:00
Dimitrie O. Paun 297f3d898d Define NONAMELESS{STRUCT,UNION} explicitly in the files that need them. 2003-01-07 20:36:20 +00:00
Francois Gouget 44eb8bf59f Many oleaut32 APIs are missing on Win95/IE3. Load them dynamically.
Uncomment some 'NULL' tests as they pass on Windows and on Wine.
Comment out those that crash on Win95 and indicate why they are
commented out.
Remove two redundant tests in vartest.c (VarI1FromBool and
VarUI2FromI2, last diff hunk).
2003-01-07 19:40:40 +00:00
Alexandre Julliard 52395b0eb9 Fixed some issues caused by the new oaidl.h. 2003-01-05 20:32:30 +00:00
Ove Kaaven 40b94e5347 Avoid direct ICOM_CALL usage. 2003-01-05 01:06:04 +00:00
Francois Gouget 065e928a7b The vt field should be a VARTYPE not a VARENUM. 2003-01-05 01:03:12 +00:00
Dimitrie O. Paun cef5961d2b Eliminate lots of __WINE__ conditionals from the headers. 2003-01-03 19:12:55 +00:00
Marcus Meissner 8ff278d25e Implemented SafeArray{SetIID,GetIID,SetRecordInfo,GetRecordInfo}.
Added support for FADF_HAVEIID, FADF_RECORD, FADF_HAVEVARTYPE.
Implemented SafeArrayAllocDescriptorEx and SafeArrayGetVarType
correctly.
Fixed second argument of SafeArrayCopyData (it is just SAFEARRAY*).
Changed allocation to include 16 bytes before the SAFEARRAY (to store
IID/VARTYPE/IRecordInfo*).
VARTYPE -> size array was not indexed correctly.
Added lots of testcases for most functionality.
Added IRecordInfo interface definition.
2003-01-02 23:13:56 +00:00
Marcus Meissner 48e583db52 Handle VT_ERROR->VT_I4/VT_R4 coercion.
VariantCopy does not need to check the return of VariantClear.
VariantCopyInd now copies VT_UNKNOWN and VT_DISPATCH too.
VarCmp handles VT_BOOL.
VarFormat handles VT_BSTR.
coerce_array fixed for VT_ARRAY|VT_UI1 -> VT_BSTR and VT_ARRAY|x ->
VT_SAFEARRAY cases.
VarCat tries to coerce types into VT_BSTR to do cat.
2003-01-02 23:11:56 +00:00
Marcus Meissner 4beaa06e9d Process TKIND_ALIAS in SLTG typelibs, 0x14 in the tail is the
tdescAlias.vt entry.
Added a small handler for TKIND_DISPATCH in SLTG.
ITypeLib_Release can have a NULL pointer as ITypeInfo*.
Split out _copy_arg function for both DispCall and ITypeInfo_fnInvoke,
added some more functionality.
ITypeInfo_fnInvoke can handle VT_USERDEFINED variants.
2003-01-02 23:11:19 +00:00
Marcus Meissner 1c421d779d Support DllGetClassObject of CLSID_StdPicture.
PICTYPE_NONE has width/height 0.
2003-01-02 17:54:57 +00:00
Francois Gouget 236ae4d2c9 Remove unnecessary sprintf calls. 2003-01-02 17:49:51 +00:00
Francois Gouget 3b640ca405 Fix signed/unsigned warnings. 2003-01-02 17:47:01 +00:00
Francois Gouget 49e119f95f Move the test strings into their own array and convert them to unicode
using a for loop. This lets us later print the offending string when a
test fails.
Fix the MSVC compilation error (XXXe183) and warnings (put suffixes as
in 0L & 1.0F, signed/unsigned warnings, s/-2147483648/0x80000000L/).
Uncomment the DateFromStr tests and fill in the todo fields where
appropriate.
Define an NB_OLE_STRINGS macro and use it to make sure all the arrays
have the right number of fields.
In the *FromStr loops, fill the return field with a dummy value (42)
before calling the conversion function. This way a test no longer
depends on whether the previous test failed or not!
If a test is expected to fail, then retval is meaningless -> omit it
from the result arrays.
If a test actually fails or was expected to fail, then there is no
point in checking retval.
Improve error reporting.
Pass the printf-style format directly to ok, remove the unnecessary
sprintfs.
2002-12-24 00:49:27 +00:00
Marcus Meissner ef2f1b6ec5 VariantChangeTypeEx for VT_ARRAY | type style variants. 2002-12-23 02:03:10 +00:00
Marcus Meissner 7c290abd85 Fixed VarBstrCmp/Cat .spec entries.
Started regression test for SafeArray functions.
Fixed SafeArrayAllocDescriptor (check bounds, set cDims).
Fixed VARTYPE_SIZE array entries so it matches native.
2002-12-23 02:02:49 +00:00
Alexandre Julliard 3c25c8e933 Get rid of ole.h. 2002-12-23 01:46:34 +00:00
Robert Shearman a80e051a71 Add standard dispatch implementation (CreateStdDispatch). 2002-12-17 01:47:27 +00:00
Andreas Mohr dc85dc0a1b Implemented VarOr(). 2002-12-16 22:08:48 +00:00
Alberto Massari ea1ca9c705 Implemented DispCallFunc so that it works when calling event handlers
that have no return value.
2002-12-12 22:59:25 +00:00
Alberto Massari 059cffd728 Calling SafeArrayDestroy on a destroyed array should be a no-op. 2002-12-12 22:59:07 +00:00
Marcus Meissner 26ffca49a2 Reverted last VT_USERDEFINED patch (was broken).
Marshal TKIND_DISPATCH interfaces just like TKIND_INTERFACE.
2002-12-12 22:25:07 +00:00
Marcus Meissner 561a1a8de0 Separated out 16bit sources for ole2disp.dll. 2002-12-12 22:24:45 +00:00
Alexandre Julliard dbf8b78acd Added .spec.def files. 2002-12-12 22:04:04 +00:00
Marcus Meissner 3b5e2d1a08 Split out 16bit code into typelib16.c. 2002-12-12 03:56:36 +00:00
Marcus Meissner 5f9e3ffdb9 Serialize/deserialize all reftypes in VT_USERDEFINED. 2002-12-12 02:15:46 +00:00
Alexandre Julliard 435e2e63f4 winnt.h should not be self-contained, it must depend on windef.h so
that STRICT works correctly; moved some definitions back to windef.h
where they belong, and removed a couple of definitions that don't
exist on Windows.
2002-12-10 22:56:43 +00:00
Jason Edmeades d197d40295 VarAdd support for integers. 2002-12-10 19:06:28 +00:00
Ove Kaaven 1f5315c80f Make sure that no files except unknwn.h include wine/obj_base.h
directly.
2002-12-05 20:33:07 +00:00
Marcus Meissner d344849e4e Marshal VT_R4 (4 byte float). 2002-12-05 19:12:50 +00:00
Ove Kaaven 729dd8bf28 Added more types to wtypes.idl. 2002-12-03 21:42:17 +00:00
Jason Edmeades 0ba86d81fe Add support for VarAnd between integers. 2002-11-25 02:42:33 +00:00
Alberto Massari 1a4f5cff4e ITypeInfo::Invoke now is able to invoke a function even when it is
provided with a byref argument.
2002-11-13 19:36:57 +00:00
Marcus Meissner dbebcffb6f Added partial implementation of ITypeInfo::GetDllEntry(). 2002-11-11 22:24:31 +00:00
Marcus Meissner 09a49d4a17 Implemented OleLoadPictureEx. 2002-11-11 19:54:22 +00:00