Commit Graph

2069 Commits

Author SHA1 Message Date
Andrew Eikum 808c47cecb oleaut32: Typelib strings of size -1 are NULL. 2013-09-09 22:10:00 +02:00
Andrew Eikum 52b1adcd6e oleaut32: Correct TRACE statement. 2013-09-06 17:25:08 +02:00
Andrew Eikum cb1f4c5387 oleaut32: Apply TKIND_DISPATCH changes to FUNCDESC results from ITypeComp::Bind. 2013-09-06 17:25:08 +02:00
Andrew Eikum 664e7938cb oleaut32: Improve TYPEDESC encoding for unknown VARTYPEs.
It's not worth printing a FIXME for every VARTYPE we don't happen to
list in the switch statement.
2013-09-06 17:25:08 +02:00
Piotr Caban a2ea406eee oleaut32: Add ICreateTypeInfo2::SetVarName implementation. 2013-09-05 13:18:22 +02:00
Francois Gouget a205171b4f oleaut32/tests: Add a trailing '\n' to a couple of ok() calls. 2013-08-28 20:23:47 +02:00
Piotr Caban 3f4b06edf1 oleaut32: Allocate bigger buffer in WMSFT_compile_names function. 2013-08-28 11:37:00 +02:00
Piotr Caban 6ab3ba1373 oleaut32: Fix memory leaks in typelib tests. 2013-08-28 11:36:51 +02:00
Andrew Eikum 810ec233c0 oleaut32: Implement ICreateTypeInfo::SetTypeDescAlias. 2013-08-27 21:30:02 +02:00
Andrew Eikum 56aa7d015d oleaut32: Resize 32-bit typeinfos when loaded in 64-bit. 2013-08-27 21:30:02 +02:00
Nikolay Sivov a1e28f70d1 oleaut32/tests: Some tests for QueryPathOfRegTypeLib() with activated context. 2013-08-23 10:41:08 +02:00
Nikolay Sivov 0473a072dd oleaut32/tests: Some tests for LoadRegTypeLib() with activated context. 2013-08-22 20:03:18 +02:00
Andrew Eikum b6bfd6d32e oleaut32: Assign MEMBERIDs to vardescs without one. 2013-08-19 11:29:27 +02:00
Andrew Eikum 341ff65b95 oleaut32: Run LayOut on typeinfos that require it before saving. 2013-08-19 11:29:16 +02:00
Andrew Eikum f66523abee oleaut32: Correct version byte order. 2013-08-19 11:29:09 +02:00
Andrew Eikum 6c45e6fea3 oleaut32/tests: Test all supported SYSKINDs. 2013-08-15 16:23:58 +02:00
Andrew Eikum 3821eaf391 oleaut32/tests: Add save/load tests for created typelibs. 2013-08-15 16:23:49 +02:00
Andrew Eikum 6f5cc0887e oleaut32: Save typelib SYSKIND. 2013-08-15 16:23:34 +02:00
Andrew Eikum cc29cad2cc oleaut32: 64-bit typelib fixes. 2013-08-15 16:23:29 +02:00
Andrew Eikum f1398510df oleaut32: Don't prevent 64-bit from loading 32-bit typelibs. 2013-08-15 16:23:00 +02:00
Piotr Caban eb5c9707b5 oleaut32: Store hreftype associated with guid while saving typelib. 2013-07-31 22:26:57 +02:00
Piotr Caban e35a05b9a4 oleaut32: Name guids hash table segment in MSFT_SegDir struct. 2013-07-31 22:26:56 +02:00
Piotr Caban 0059a0af62 oleaut32: Fill guids hash table while creating typelib. 2013-07-31 22:26:56 +02:00
Piotr Caban c43bf14569 oleaut32: Fix ICreateTypeInfo2_fnAddVarDesc implementation. 2013-07-31 22:26:55 +02:00
Piotr Caban 2f707558fc oleaut32: Store PARAMDESCEX structure inside lprgelemdescParam.
Thanks to this change we don't need to free the data differently
depending on how it was created (by typelib reading or writing code).
2013-07-30 19:12:37 +02:00
Piotr Caban 1967b35962 oleaut32: Free guid_list in ITypeLib2_Release. 2013-07-30 19:12:29 +02:00
Piotr Caban 6d6c3e5d81 oleaut32: Don't leak BSTRs allocated in string_list and name_list. 2013-07-30 19:12:26 +02:00
Piotr Caban 00d132ee15 oleaut32: Store typeinfo hreftype while saving typelib. 2013-07-29 15:01:09 +02:00
Piotr Caban f9e73f97a9 oleaut32: Name names hash table segment in MSFT_SegDir struct. 2013-07-29 15:00:59 +02:00
Piotr Caban aada2c7b6f oleaut32: Fill names hash table while creating typelib. 2013-07-29 15:00:52 +02:00
Piotr Caban 4f62fb2eec oleaut32: Fix custdata_list initialization in ITypeInfo_fnGetRefTypeInfo. 2013-07-27 11:55:07 -05:00
Marcus Meissner 9a0b4345ec oleaut32/tests: Test return of SafeArrayAllocData (Coverity). 2013-07-03 21:20:04 +02:00
Marcus Meissner 0f86ae37c6 oleaut32: Check a return value (Coverity). 2013-07-03 21:20:04 +02:00
Jacek Caban 9b3d0fca57 oleaut32: Fixed duplicated UUIDs and relevant tests.
Spotted by Thomas Faber.
2013-07-02 19:39:37 +02:00
André Hentschel dc0cf8319c oleaut32/tests: Use BOOL instead of int when appropriate. 2013-06-28 11:39:42 +02:00
Jacek Caban a87f401e7f oleaut32/tests: Added external connections tests for MSHLFLAGS_TABLEWEAK marshaling. 2013-06-27 15:31:33 +02:00
André Hentschel 38f16107d6 oleaut32/tests: Don't use autoheader styled defines in safearray. 2013-06-27 11:11:09 +02:00
André Hentschel 4e0e066cca oleaut32/tests: Get rid of HAVE_OLEAUT32_R8 in safearray. 2013-06-27 11:11:03 +02:00
André Hentschel 8c0398d1a5 oleaut32/tests: Get rid of HAVE_OLEAUT32_DECIMAL in safearray. 2013-06-27 11:10:59 +02:00
André Hentschel cdeae41cd1 oleaut32/tests: Get rid of HAVE_OLEAUT32_RECORD in safearray. 2013-06-27 11:10:55 +02:00
André Hentschel acfc14fe9b oleaut32/tests: Get rid of IS_ANCIENT in safearray. 2013-06-27 11:09:29 +02:00
André Hentschel 01c591de7a oleaut32/tests: Don't use autoheader styled defines in varformat. 2013-06-26 12:13:13 +02:00
André Hentschel b1804fd7e3 oleaut32/tests: Don't use autoheader styled defines in vartype. 2013-06-26 12:13:03 +02:00
André Hentschel a7c77f93ea oleaut32/tests: Get rid of HAVE_OLEAUT32_CY in vartype. 2013-06-26 12:12:22 +02:00
André Hentschel 5601edd043 oleaut32/tests: Get rid of HAVE_OLEAUT32_DECIMAL in vartype. 2013-06-26 12:12:18 +02:00
André Hentschel c64d409aa8 oleaut32/tests: Get rid of HAVE_OLEAUT32_RECORD in vartype. 2013-06-26 12:12:10 +02:00
André Hentschel 7bb58e88a4 oleaut32/tests: Get rid of IS_ANCIENT in vartype. 2013-06-26 12:12:00 +02:00
André Hentschel a58e9f0312 oleaut32/tests: Don't use autoheader styled define in vartest. 2013-06-25 12:33:46 +02:00
André Hentschel 18690c833a oleaut32/tests: Get rid of HAVE_OLEAUT32_RECORD in vartest. 2013-06-25 12:33:45 +02:00
André Hentschel ca77d6c1da oleaut32/tests: Get rid of IS_ANCIENT in vartest. 2013-06-25 12:33:43 +02:00
Andrew Eikum d3b896358a oleaut32: Use typelib's pointer size, not system's. 2013-06-24 11:43:33 +02:00
Andrew Eikum 2fa16df551 oleaut32: Load referenced typelibs in the same architecture. 2013-06-24 11:43:00 +02:00
Andrew Eikum 82376431e8 oleaut32: Register the typelib's path without WOW64 redirection. 2013-06-24 11:42:53 +02:00
Alexandre Julliard 28ece74fd8 Use the official Microsoft definitions for Gaelic languages. 2013-06-19 20:09:51 +02:00
Dmitry Timoshkov 08bade6880 oleaut32: Do not rely on vtable placement in the implementation structure. 2013-06-14 11:45:26 +02:00
Dmitry Timoshkov eca18b5152 oleaut32: Do not rely on vtable placement in the implementation structure. 2013-06-13 17:13:28 +02:00
Alistair Leslie-Hughes 661c2b8a0e oleaut32/tests: Add DECIMAL tests. 2013-06-13 12:18:49 +02:00
André Hentschel b3f7de8fec oleaut32/tests: Add tests for VarDecCmpR8 (gcov). 2013-06-11 11:52:28 +02:00
Alexandre Julliard 699eb85ce0 oleaut32: Remove redundant declaration of CLSID_PSFactoryBuffer. 2013-06-10 14:24:11 +02:00
Marcus Meissner 0bd04d40cf oleaut32: Avoid memory leaking junk (Coverity). 2013-06-10 11:53:14 +02:00
Marcus Meissner b22dade1d6 oleaut32: Fixed incorrect pointer deref (Coverity). 2013-06-10 11:53:05 +02:00
Nikolay Sivov 4ee9aef018 oleaut32: Added proxy/stub body for CreateInstanceLic(). 2013-06-06 10:42:18 +02:00
Andrew Eikum 40966b3615 oleaut32: Use the new typelib creation implementation. 2013-06-06 10:41:39 +02:00
Andrew Eikum 9afd5845e5 oleaut32: Always read all imports from the typelib. 2013-06-05 17:31:40 +02:00
Andrew Eikum 7adad42745 oleaut32: Use implementation bitflag in href. 2013-06-05 17:31:40 +02:00
Andrew Eikum d983e6d590 oleaut32: Always search external references in GetRefTypeInfo. 2013-06-05 17:31:40 +02:00
Andrew Eikum 3983bbf7d9 oleaut32: Fix ITypeInfo::GetNames for functions. 2013-06-05 17:31:40 +02:00
Andrew Eikum cee0a726ed oleaut32: Don't fall back on typelib name for docstring. 2013-06-05 17:31:40 +02:00
Andrew Eikum 0210cb9385 oleaut32: Only copy previous function name if both are property accessors. 2013-06-04 21:01:13 +02:00
Andrew Eikum 09d787d2d5 oleaut32: When loading typelibs, skip over function default parameters as well. 2013-06-04 21:01:13 +02:00
Andrew Eikum af3ae0c4f2 oleaut32: Implement ICreateTypeLib::SaveAllChanges. 2013-06-04 21:01:11 +02:00
Alistair Leslie-Hughes 6d1db050d2 oleaut32/tests: Correct output arguments. 2013-06-04 10:14:58 +02:00
Andrew Eikum 205671f355 oleaut32: Implement ICreateTypeInfo::AddVarDesc. 2013-06-03 11:27:12 +02:00
Andrew Eikum 4b2201b11c oleaut32: Implement ICreateTypeInfo::SetVarDocString. 2013-06-03 11:27:10 +02:00
Andrew Eikum 5ae88daf63 oleaut32: Implement ICreateTypeInfo::SetVarHelpContext. 2013-06-03 11:27:07 +02:00
Andrew Eikum 35342cef60 oleaut32: Store all GUIDs in typelibs. 2013-05-31 11:59:53 +02:00
Andrew Eikum f7dbebef66 oleaut32: Pull TYPEATTR struct contents out. 2013-05-31 11:59:44 +02:00
Andrew Eikum 3a16568f41 oleaut32: Pull TLIBATTR struct contents out.
So we can store GUIDs outside of the structs.
2013-05-31 11:59:30 +02:00
Andrew Eikum 379e1c035a oleaut32: Store all Names in typelibs, too. 2013-05-31 11:59:17 +02:00
Andrew Eikum dc9cd02264 oleaut32: Load and store all of the strings in a typelib.
This lets us easily avoid duplicate strings in the typelib.
2013-05-31 11:59:07 +02:00
Andrew Eikum d8b98efb4f oleaut32: Implement ICreateTypeInfo::LayOut. 2013-05-30 10:56:34 +02:00
Andrew Eikum 02a2a6d936 oleaut32: Implement ICreateTypeInfo::SetCustData. 2013-05-30 10:56:32 +02:00
Andrew Eikum 92b9304ae4 oleaut32: Implement ICreateTypeInfo::SetImplTypeFlags. 2013-05-30 10:56:29 +02:00
Andrew Eikum 90e72d2d49 oleaut32: Implement ICreateTypeInfo::SetFuncAndParamNames. 2013-05-30 10:56:26 +02:00
Francois Gouget 440e936abe oleaut32/tests: Add a trailing '\n' to a couple of ok() calls. 2013-05-29 11:25:40 +02:00
Andrew Eikum aec4504c8a oleaut32: Implement ICreateTypeInfo::SetFuncHelpContext. 2013-05-29 11:25:00 +02:00
Andrew Eikum 479ffebf40 oleaut32: Implement ICreateTypeInfo::AddFuncDesc. 2013-05-29 11:24:58 +02:00
Andrew Eikum 8c6984ab7a oleaut32: Improve TYPEFLAG_FDUAL handling. 2013-05-29 11:24:56 +02:00
Andrew Eikum 0082256a3f oleaut32: Implement ICreateTypeInfo::AddImplType. 2013-05-29 11:24:53 +02:00
Andrew Eikum f9d42aee53 oleaut32: Implement ICreateTypeInfo::AddRefTypeInfo.
This also corrects our HREFTYPE values a little bit.
2013-05-29 11:24:43 +02:00
Tatyana Fokina 97f501bec3 oleaut32: Ignore NULL ppTLib/pIndex in ITypeInfo2_fnGetContainingTypeLib. 2013-05-28 19:47:53 +02:00
Andrew Eikum d72a797f00 oleaut32: Implement ICreateTypeLib::CreateTypeInfo. 2013-05-28 14:32:21 +02:00
Andrew Eikum 6f6a487579 oleaut32: Implement basic ICreateTypeInfo functions. 2013-05-28 14:32:13 +02:00
Andrew Eikum ba5c9c7d38 oleaut32: Implement basic ICreateTypeLib functions. 2013-05-28 14:32:07 +02:00
Andrew Eikum 97a96094bb oleaut32: Stub typelib and typeinfo creation interfaces in typelib.c. 2013-05-28 14:31:56 +02:00
Jacek Caban a047b2cb6f oleaut32: Added IExternalConnection tests. 2013-05-23 20:18:18 +02:00
Andrew Eikum 70ed25fa1a oleaut32: Also search local typeinfos in ITypeInfo::GetRefTypeInfo. 2013-05-16 17:31:39 +02:00
Andrew Eikum c74a9eac93 oleaut32: Always initialize PARAMDESCEX's cBytes field. 2013-05-16 17:31:35 +02:00
Andrew Eikum 5f85b7c8ac oleaut32: Don't return bogus pointers if no data is available. 2013-05-13 11:05:27 +02:00
Andrew Eikum 1a00e932ad oleaut32: Use containing TypeLib's HelpFile in ITypeInfo::GetDocumentation. 2013-05-13 11:05:23 +02:00
Andrew Eikum 787ac75045 oleaut32: Sanity check some arguments. 2013-05-13 11:05:20 +02:00
Andrew Eikum b301234f3a oleaut32: Finish COM cleanup for ITypeLib objects. 2013-05-10 12:00:09 +02:00
Andrew Eikum d7313b21e8 oleaut32: Finish COM cleanup for internal loading structures. 2013-05-10 12:00:07 +02:00
Andrew Eikum ab7fffaafa oleaut32: Finish COM cleanup for ITypeInfo objects. 2013-05-10 12:00:04 +02:00
Andrew Eikum 8897f6034c oleaut32: COM cleanup for internal loading structures. 2013-05-09 14:16:06 +02:00
Andrew Eikum ddcd368b28 oleaut32: COM cleanup for ITypeInfo object. 2013-05-09 14:16:04 +02:00
Andrew Eikum 19f3bbc903 oleaut32: COM cleanup for ITypeLib object. 2013-05-09 14:16:00 +02:00
Piotr Caban 06845a443e oleaut32: Use MSFT_VarFunc to store FUNCDESC. 2013-04-11 19:32:32 +02:00
Piotr Caban ea5dbbb0fb oleaut32: Use MSFT_VarRecord to store VARDESC. 2013-04-11 19:32:31 +02:00
Piotr Caban b0dcf32b85 oleaut32: Make typeinfo offsets table dynamic. 2013-04-11 19:32:31 +02:00
Piotr Caban 5e6016e2a7 oleaut32: Don't add stdole2 import when TYPEFLAG_FDISPATCHABLE is set. 2013-04-11 19:32:31 +02:00
Piotr Caban 3f7c07f560 oleaut32: Add support of VT_USERDEFINED arguments with default value in AddFuncDesc. 2013-04-09 15:26:14 +02:00
Piotr Caban fc456a3fea oleaut32: Add support for VARIANT arguments with default value in AddFuncDesc. 2013-04-09 15:26:12 +02:00
Piotr Caban cd9bbd64e8 oleaut32: Fixed setting oVft value in ITypeInfo2::GetFuncDesc. 2013-04-09 15:26:12 +02:00
Piotr Caban a2d74e5f0c oleaut32: Fixed VARIANT_FormatDate behavior on dates before year 1600. 2013-02-25 13:03:03 +01:00
Piotr Caban 209b58c64e oleaut32: Fixed VarBstrFromDate behavior on dates before year 1600. 2013-02-22 19:15:59 +01:00
Piotr Caban 8f7d1ed520 oleaut32: Fixed time outputing for dates before 1899 in VarBstrFromDate. 2013-02-22 19:15:28 +01:00
Andrew Talbot eedf2f6fab oleaut32: Avoid signed-unsigned integer comparisons. 2013-02-22 10:17:32 +01:00
Jacek Caban 820c7635ab oleaut32: Fixed copy&paste mistake in SysFreeString.
Spotted by Piotr.
2013-02-19 19:50:50 +01:00
Jacek Caban 16d1b3b026 oleaut32: Added some SysFreeString tests. 2013-02-13 19:10:17 +01:00
Jacek Caban ed9d78d2b9 oleaut32: Don't free a string in SysFreeString if it's already in cache. 2013-02-13 19:10:14 +01:00
Jacek Caban 88367a3c58 oleaut32: Return error if VT_HRESULT is used as return type in DispCallFunc. 2013-02-12 15:01:55 +01:00
Jacek Caban 253fdf1574 oleaut32: COM clean up of ITypeLib2 interface implementation. 2013-02-12 14:51:50 +01:00
Marcus Meissner 063dccdd8a oleaut32: Mark various symbols as hidden. 2013-01-09 12:53:55 +01:00
Marcus Meissner e0fa39b3e0 oleaut32: Mark PropertyPageSiteVtbl static. 2012-12-28 11:25:34 +01:00
Andrew Talbot b2b4bb9a12 oleaut32: Indentation fix. 2012-12-21 11:37:01 +01:00
Alexandre Julliard 718e2f256e oleaut32: Cleanup some relay traces. 2012-12-20 12:55:37 +01:00
Alexandre Julliard 2915e47979 oleaut32: Use a saner calling convention for the marshaller asm thunks. 2012-12-20 12:54:55 +01:00
Alistair Leslie-Hughes f20427361c oleaut32: Don't output an error when the typelib cannot be found. 2012-12-20 12:21:39 +01:00
Nikolay Sivov 7f8825085d oleaut32: Added a test for prop getter invocation with different flags. 2012-12-14 19:01:36 +01:00
Nikolay Sivov 61ad275e82 oleaut32: Use correct allocation length (Coverity). 2012-12-10 11:24:15 +01:00
Alistair Leslie-Hughes 04d3ba5b35 oleaut32: Fail if we cannot find the TYPELIB resource. 2012-11-30 11:55:02 +01:00
Dmitry Timoshkov 97e2c24cc7 oleaut32: Add support for saving an empty picture. 2012-11-26 12:01:40 +01:00
Dmitry Timoshkov 6c53c4ee03 oleaut32: Add a test for loading/saving an empty picture. 2012-11-26 12:01:27 +01:00
Michael Stefaniuc 333c71730d oleaut32: Remove a superfluous TRUE:FALSE conditional expression. 2012-11-14 16:31:50 +01:00
André Hentschel 43ffbe5611 oleaut32: Fix remaining memory leak (coverity). 2012-11-13 18:07:06 +01:00
Andrew Eikum 561e46c435 oleaut32: helpcontext is not an offset. 2012-11-02 20:12:36 +01:00
André Hentschel a46bfd644d oleaut32: Don't leak memory allocated by heap_alloc_zero (coverity). 2012-10-29 10:39:59 +01:00
André Hentschel b45e4496af oleaut32: Don't leak SafeArray (coverity). 2012-10-29 10:35:33 +01:00
Alexandre Julliard 9351867e6a oleaut32/tests: Delete the correct object in the icon test. 2012-10-18 22:28:41 +02:00
Marcus Meissner d8c1507846 oleaut2: Pass up errors on typelib writeout (Coverity). 2012-10-01 11:59:37 +02:00
Francois Gouget 085b1ba3f5 oleaut32/tests: Fix compilation on systems that don't support nameless structs or unions. 2012-09-24 10:51:47 +02:00
Jacek Caban 2f7afbebd1 oleaut32: Properly handle TKIND_ALIAS when looking for iface GUID. 2012-09-19 16:31:14 +02:00
Charles Davis 8e14c9413b oleaut32/tests: Don't use a C99 keyword as a method name. 2012-09-18 14:49:16 +02:00
Charles Davis 8cba35d5d2 oleaut32/tests: Don't take the size of a pointer (Clang). 2012-09-18 14:49:08 +02:00
Nikolay Sivov 2bb07936ef oleaut32: Added some VT_DECIMAL rounding tests. 2012-09-04 16:15:51 +02:00
Alistair Leslie-Hughes 87fabd1009 oleaut32: Add VT_BSTR to VT_UI2|VT_ARRAY test. 2012-08-29 11:47:22 +02:00
Roman Dadkov 79ba36aef8 oleaut32: Fix VectorFromBstr call in VARIANT_CoerceArray. 2012-08-24 11:14:13 +02:00
Roman Dadkov 3eab4f8d96 oleaut32: Record DocString field in ITypeInfoImpl structure in function ITypeLib2_Constructor_SLTG. 2012-08-22 12:11:54 +02:00
Jacek Caban 1742012ff0 oleaut32: Added more tests. 2012-08-20 20:17:38 +02:00