Commit Graph

329 Commits

Author SHA1 Message Date
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
Marcus Meissner 8e801e25f6 Silence one FIXME(). Implement ITypeInfo::GetDocumentation for
variable descriptions.
2002-11-11 19:54:04 +00:00
Marcus Meissner 1bd4bbb569 Draft implementation of DispCallFunc. 2002-11-08 18:51:28 +00:00
Patrik Stridvall 199acb77f1 Added some defines for compatibility with Windows headers. 2002-10-29 21:26:42 +00:00
Michael Stefaniuc 9faec8a877 Compile the oleaut32 dll with -DSTRICT. 2002-10-25 03:12:50 +00:00
Alexandre Julliard 23bb3715f7 Added support for building certain dlls with -DSTRICT.
Added -DWINE_NO_STRICT flag to dlls that don't support STRICT yet.
2002-10-18 23:46:28 +00:00
Patrik Stridvall 9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Alexandre Julliard dd0bdbe44e Removed the __uint* types from basetsd.h since they don't exist under
Windows. Fixed a few other issues with type definitions.
2002-09-12 17:29:12 +00:00
Patrik Stridvall 1ee88a2bfb Removed trailing white space. 2002-08-28 23:43:43 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00
Alexandre Julliard edeee89c3e Create separate makefiles for tests for more flexibility. 2002-08-09 01:22:40 +00:00
Alexandre Julliard 267ca68253 Fixed HANDLE<->HFILE conversions, since they will be different types
when handles are void*.
2002-07-31 17:20:00 +00:00
Michael Stefaniuc 5c55df649b Converted HENHMETAFILE and HMETAFILE to a void*. 2002-07-29 00:14:59 +00:00
Patrik Stridvall a3868218d0 Fixed some issues found by winapi_check. 2002-07-19 00:30:16 +00:00
Gregg Mattinson ecdafc37a2 Fixed void* arithmetic. 2002-07-16 01:12:39 +00:00
Gregg Mattinson 6886467cb9 Fixes to allow big endian machines to load MSFT typelib files. 2002-07-10 23:07:59 +00:00
Jason Edmeades 86d5a32de4 - VarFormat now supports VT_R8 and BYREF variant types.
- Add VarCyMulI4 support.
2002-07-08 19:36:24 +00:00
Jason Edmeades daec720709 Ensure VarBstrCat handles null parms as per windows and actually does
the concatenation even for null args.
2002-07-05 01:22:03 +00:00
Jason Edmeades 99b3307406 Ensure we free the cached HFONT after loading in a fresh font. Enables
fonts in VB programs to appear correctly.
2002-06-25 02:54:06 +00:00
Vincent Béron e35580f4c9 Fixed some various comparisons wrt signedness. 2002-06-21 22:25:17 +00:00
John K. Hohm 2b78ac039f Implemented SizeOfVariantData cases for VT_DISPATCH, VT_UNKNOWN, VT_CY. 2002-06-21 20:13:18 +00:00
Alexandre Julliard 77afd6c47e Made some more spec file entries optional or unnecessary.
Fixed a few DLLName/DLLFileName mismatches.
2002-06-21 19:15:45 +00:00
Alexandre Julliard 8438d9fccb Moved succeeding test out of todo block. 2002-06-21 19:02:44 +00:00
Mike McCormack b7937afab9 Fixed ordinals to match the Windows values.
Added a couple of stubs.
2002-06-20 23:51:21 +00:00
Jason Edmeades 5b6a9ff537 - VarAnd, VarCmp (Strings only), VarNot implemented.
- VarParseNumFromStr/VarNumFromParseNum handle negative currency
  numbers.
- More VarCmp support (Decimals and Dates).
- Date support for VB time only (0.0->1.0), corrected some date
  rounding and calculation errors around variant dates and the system
  time.
- Variant date support now round trips! (Date->Variant->Date) due to
  misuse of tm_mon (0..11 not 1..12).
- Better pre-1899 support for dates in the SYSTEMTIME format.
- VarBstrFromCy, VarCyFromStr implemented.
- VarFormat partial implementation (currency and date support).
- VarFormatFromTokens, VarTokenizeFormatString partial implementation
  as per w2k (dates only so far).
- Better debugging when dumping variants, and some additional trace
 points to help debugging.
- Fix to VarBstrCmp to handle null and empty string the same (as per
  w2k, different to msdn).
- Fix return from VarDateFromUdate.
- Correct definition of CY structure.
2002-06-20 23:07:55 +00:00
Marcus Meissner 30f9da4b58 ITypelib::Invoke: Handle different length arguments better, we also
return 1 VARIANT only.
2002-06-20 22:45:08 +00:00
Marcus Meissner c18a6aa8fd Handle argsize for VT_DATE. 2002-06-14 00:36:42 +00:00
Huw D M Davies 61fc6f8cd3 Add more magic to find the start of the nametable. 2002-06-10 23:01:34 +00:00
Marcus Meissner e81f10c97c Merged the two serializer and unserializer functions into one, cleaned
them up.
VT_PTR: Handle NULL pointers by sending a cookie.
Added support for: VT_CARRAY, VT_DISPATCH, TKIND_RECORD, VT_VOID,
VT_UI1, VT_UI2, VT_ERROR, VT_UI4, VT_UINT.
Added a custom serializer for DISPPARAMS struct.
2002-06-10 02:30:20 +00:00
Marcus Meissner 238cdeab1b Added some debugoutput functions for TYPEATTR, IDLDESC, VARDESC.
Support more parameters in _invoke (needed for IDispatch::Invoke in
the marshaller).
2002-06-10 02:29:55 +00:00
Marcus Meissner fd625ddb0b Added marshalling of IUnknown. 2002-06-04 22:14:06 +00:00
Steven Edwards fb24f71e5b Porting fixes. 2002-06-04 00:50:11 +00:00
Alexandre Julliard 7cae558bdc Removed some more trailing whitespace. 2002-06-01 02:55:48 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Vincent Béron 6a5ba8fba2 Fixed some more missing \n in traces. 2002-05-29 19:09:54 +00:00
Andreas Mohr 841ce935d2 Removed obsolete email address. 2002-05-23 02:41:46 +00:00
Francois Gouget 4c314000b9 Make the tests compile with Visual C++. 2002-05-23 02:40:07 +00:00
Alexandre Julliard cc2ee7636d Renamed Winelib apps to .exe.so to follow the dll naming convention. 2002-05-21 19:42:29 +00:00
Alexandre Julliard 2ab7625934 Removed most imports of ntdll since we no longer import Wine internal
functions from there.
2002-05-17 03:37:12 +00:00
Alexandre Julliard 9b6f433ebb Implemented strtolW/strtoulW in libwine_unicode and used it to replace
wcstol and friends.
2002-05-16 18:58:47 +00:00
Alexandre Julliard ad53383f9b Added winebuild support for generating a .dbg.c file containing the
debug channels definitions.
Made win32 the default type for spec files.
Ignore C compiler in winebuild so we can simply pass it $(DEFS).
Removed type win32 and debug_channels from spec files.
Fixed winebuild to always generate correct C identifiers (reported by
Vincent Béron).
2002-05-14 20:54:58 +00:00
Alexandre Julliard 67371bcc8d Added -res option to specify resources on winebuild command-line.
Added -exe mode to generate a .spec.c for an exe without having to
provide a .spec.
Removed some no longer needed spec files.
Removed .dll extension in makefiles import specifications.
2002-05-11 23:06:32 +00:00
Alexandre Julliard 32459912dc Moved imports specification from the .spec into the Makefile so that
it can be used on platforms that don't build a .spec.c file.
2002-05-09 00:05:48 +00:00
Marcus Meissner 87ecfab4ec Small hack to make InstallShield v6 work better. 2002-05-06 20:12:32 +00:00
Marcus Meissner 5b63cc22e8 BSTRs can be NULL, handle them seperately. 2002-05-06 20:12:11 +00:00
Alexandre Julliard 140e7222e0 Removed more code at Hidenori's request. 2002-05-05 19:40:57 +00:00
Alexandre Julliard b53f13093e Attempt at fixing MAX_PATH issues for mingw. 2002-05-01 18:13:18 +00:00
Alexandre Julliard 9a8e6e98c5 Added some shdocvw ordinals and stubs.
Fixed a few winapi_check issues.
2002-04-27 00:16:25 +00:00
Hidenori Takeshima ed8fbe3e95 Implemented OleIconToCursor. 2002-04-20 20:55:13 +00:00
Hidenori Takeshima a781a31922 Return error codes in some 16bit ole stubs, returning success causes
crashes.
2002-04-11 23:44:48 +00:00
Alexandre Julliard d7c606d624 Various makefile fixes for the test environment. 2002-04-02 02:58:45 +00:00
Hidenori Takeshima 3a00735924 Implemented CreateStdDispatch and CreateDispTypeInfo. 2002-04-01 20:58:37 +00:00
Marcus Meissner e8d977011b Ported variant tests to the new testing framework. 2002-03-26 01:54:25 +00:00
Alexandre Julliard c1bfca04e1 Changed builtin dlls file names to make it clear they are not normal
Unix libraries, and install them in $libdir/wine instead of $libdir to
avoid name conflicts in /usr/lib.
2002-03-20 22:19:06 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Patrick Haller 0e3c9d454b Fix crash in VariantTimeToDosDateTime. 2002-02-19 18:23:09 +00:00
Marcus Meissner 0749fc2034 Implemented Local Server COM.
Implemented the Typelib based Marshaler.
2002-02-05 18:11:17 +00:00
Malte Starostik 4062cd924f Do not destroy ITypeLib held by ITypeInfo before the latter is freed. 2002-02-04 18:32:20 +00:00
Marcus Meissner a79dcc46eb VT_EMPTY can be coerced to VT_I4, value 0. 2002-02-04 18:31:53 +00:00
Huw D M Davies eb16e1b055 Weird thing with lcid of library is that if sublang is neutral then we
return the primary lang else we return 0.
2002-01-29 17:05:11 +00:00