Vincent Povirk
a7e69339dc
ole32: Reduce duplicated code in adjustPropertyChain.
...
Most of the work is the same regardless of relation type, so bring
those parts out of the relation type test.
2009-10-29 15:46:16 +01:00
Vincent Povirk
911e923fbc
ole32: Don't use IEnumSTATSTGImpl to search for a parent directory entry.
...
Use a binary search to find the parent of a storage object being deleted.
We currently use IEnumSTATSTGImpl to do a linear search, which is
unnecessary.
2009-10-28 11:12:24 +01:00
Vincent Povirk
0359a47d0d
ole32: Fix the LEFTCHILD and RIGHTCHILD offset defines.
2009-10-28 11:10:59 +01:00
Alexandre Julliard
0beaa44d7d
ole32: Specify the full application path when starting rpcss.exe.
2009-10-27 11:20:34 +01:00
Vincent Povirk
ee6856d874
ole32: Don't use IEnumSTATSTG to search for elements of storages.
...
We use it to do a linear search of a binary tree, which is overkill.
Replace it with a simple binary search.
2009-10-26 11:17:35 +01:00
Vincent Povirk
dce1ec06c8
ole32: Rename previous/nextProperty to left/rightChild.
...
These fields are used to build a binary tree of elements in a storage. This
should make the usage clearer.
2009-10-26 11:17:23 +01:00
Vincent Povirk
224ddb50f3
ole32: Clarify the timestamp fields in StgProperty.
...
According to the MS spec, these are FILETIME structures containing creation
and modification times.
2009-10-26 11:17:13 +01:00
Alexandre Julliard
f7bd47f78b
ole32/tests: Set returned pointer to NULL in CreateInstance (Valgrind).
2009-10-22 13:04:36 +02:00
Paul Vriens
5f52d86cc2
oleaut32/tests: Remove a temp file.
2009-10-20 14:39:37 +02:00
Vincent Povirk
657c832765
ole32: Add test showing storage objects can't be opened twice.
2009-10-14 11:23:07 +02:00
Andrew Eikum
7e7ed92b5d
ole32/tests: Add tests for IStorage::CopyTo with IID exclusions.
2009-10-12 12:13:14 +02:00
Andrew Eikum
7b475390e4
ole32: Use rgiidExclude in StorageImpl::CopyTo.
2009-10-12 12:13:11 +02:00
Andrew Eikum
29fc53b632
ole32/tests: Add tests for IStorage::CopyTo with SNB exlusions.
2009-10-06 11:57:44 +02:00
Andrew Eikum
8672289c6e
ole32: Use snbExclude in StorageImpl::CopyTo.
2009-10-06 11:57:37 +02:00
Andrew Eikum
60d8547e61
ole32/tests: Add tests for IStorage::CopyTo.
2009-10-06 11:57:29 +02:00
Nikolay Sivov
5b723235d8
ole32: Check source pointer in StringFromGUID2.
2009-10-06 11:57:20 +02:00
Vincent Povirk
b41822b1dc
ole32: Remove useless comments.
2009-10-05 13:46:00 +02:00
Vincent Povirk
536aa9be99
ole32/tests: Add test for non-root transacted storage objects.
2009-10-05 13:46:00 +02:00
Vincent Povirk
3c9067de9f
ole32/tests: Add test for IStorage::Revert.
2009-10-05 13:46:00 +02:00
Vincent Povirk
d6e020fdb8
ole32/tests: Test substorages of transacted storage objects.
2009-10-05 13:46:00 +02:00
Vincent Povirk
40433554d5
ole32: We do need to implement Commit/Revert for non-root storage.
2009-10-05 13:45:59 +02:00
Jörg Höhle
08df19b405
ole32/tests: Guard ReleaseStgMedium with SUCCEEDED.
2009-09-30 14:31:57 +02:00
Markus Stockhausen
abdebcdbbe
ole32/storage32: Fix for reference counters in nested storage.
2009-09-26 16:05:45 +02:00
Alexandre Julliard
f5ed7868ee
ole32: Don't register interfaces that belong to actxprxy.
2009-09-11 12:44:15 +02:00
Huw Davies
9b38ffe6c6
ole32: The server principal name can be the constant COLE_DEFAULT_PRINCIPAL.
2009-09-08 13:51:18 +02:00
Andrew Eikum
968126c231
ole32: Don't fail when constants are 'incorrect'.
2009-09-08 12:11:10 +02:00
Austin English
f8daa90284
ole32: Fix build on Power PC.
2009-09-01 12:52:11 +02:00
Eric Pouech
09adcee263
ole32: Fix various missing Release calls on monikers.
2009-08-29 17:11:31 +02:00
Eric Pouech
35d6217def
Remove a couple of superfluous casts.
2009-08-29 17:11:26 +02:00
Andrew Eikum
a0d262c545
ole32: Overwrite previous CompObj instead of failing.
2009-08-28 11:54:30 +02:00
Austin English
57bc49099b
ole32: Add a stub for CoGetCurrentLogicalThreadId.
2009-08-27 13:36:04 +02:00
Alexandre Julliard
4964374570
ntdll: The large integer functions are 32-bit only.
2009-08-24 15:17:33 +02:00
Andrew Eikum
a0aaa65507
ole32: Don't read past the end of the stream when converting block types.
2009-08-24 12:02:40 +02:00
Andrew Eikum
85a5867308
ole32: Add big block chain to small block chain conversion routine.
2009-08-20 19:43:30 +02:00
Andrew Eikum
972e4a22f8
ole32: Allow small block chains with no property.
2009-08-20 19:43:30 +02:00
Andrew Eikum
7ca31e83f0
ole32: Repair leak on error path.
2009-08-20 19:43:30 +02:00
Juan Lang
b308157bf2
ole32: Correct byte count.
2009-08-20 15:26:54 +02:00
Juan Lang
c664e9f494
ole32: On big endian machines, copy strings to little endian order without mucking with the map they're stored in.
2009-08-20 15:26:45 +02:00
Alexandre Julliard
4770ba7bcc
ole32/tests: Skip a string that may not round-trip in all codepages.
2009-08-19 10:02:50 +02:00
Alexandre Julliard
a104766b07
ole32/tests: Don't release the token object since it doesn't have a proper ref count.
2009-08-18 13:00:37 +02:00
Alexandre Julliard
9b2e414e91
ole32/tests: Avoid infinite waits in tests.
2009-08-18 12:48:57 +02:00
Alexandre Julliard
d617642999
ole32/tests: Avoid depending on the heap allocation order for the CoGetObjectContext test.
2009-07-22 14:42:50 +02:00
Francois Gouget
3cbeae820d
ole32: Make apartment_addref() static.
2009-07-07 11:16:26 +02:00
Francois Gouget
f8afcdbb7c
ole32: Reorder some compobj functions to avoid forward declarations.
2009-07-07 11:16:22 +02:00
Paul Vriens
f057d7d63f
ole32/tests: Reset a variable before testing.
2009-07-06 14:35:26 +02:00
Alexandre Julliard
05beb0daed
ole32/tests: Fix the HMETAFILE_UserSize prototype.
2009-07-03 13:57:21 +02:00
Alexandre Julliard
56af92b073
makefiles: Regenerate the source lists using make_makefiles.
2009-07-03 13:26:38 +02:00
Michael Stefaniuc
a1b286086e
ole32: Import the content of version.rc into the main rc file.
...
There is no need for a separate file.
2009-07-03 13:06:18 +02:00
Hans Leidekker
6986d97f18
ole32: Use existing MTA in CoGetContextToken and CoGetObjectContext.
2009-07-03 13:06:17 +02:00
Paul Vriens
fb0275dd31
ole32/tests: Fix some test failures on Win9x/WinME.
2009-07-02 14:26:02 +02:00
Huw Davies
e67da11716
ole32: Implement OleCreateEmbeddingHelper.
...
Based on a patch by Rob Shearman.
2009-06-26 11:59:04 +02:00
Hans Leidekker
82bcafe8eb
ole32: Add tests for CoGetContextToken.
2009-06-23 15:52:58 +02:00
Hans Leidekker
b9be397024
ole32: Implement CoGetContextToken.
2009-06-23 15:52:37 +02:00
Huw Davies
7490f922e0
ole32/tests: Add a test for enhanced metafile retrieval.
2009-06-23 11:45:08 +02:00
Huw Davies
5c97db9db6
ole32: Add support for retrieving enhanced metafiles.
2009-06-23 11:45:02 +02:00
Huw Davies
f48e5e2b5f
ole32: Since OleCreateLinkFromData is a stub we should return S_FALSE from OleQueryLinkFromData.
2009-06-22 14:32:30 +02:00
Francois Gouget
872035f1ab
ole32: Make stub_manager_int_addref() static.
2009-06-22 13:31:03 +02:00
Francois Gouget
887c395ce2
ole32: Reorder some stubmanager functions to avoid forward declarations.
2009-06-22 13:30:58 +02:00
Vincent Povirk
51385a98cc
ole32: Add support for rendering HENHMETAFILE clipboard objects.
2009-06-22 11:22:11 +02:00
Alexandre Julliard
c98ce23fd2
ole32: Get rid of line feeds and tabs in traces.
2009-06-09 17:01:14 +02:00
Francois Gouget
70cdb5c3e4
ole32/tests: Make test_readonly() static.
2009-06-05 14:43:25 +02:00
Paul Vriens
cb81487707
ole32/tests: Fix remaining test failures on NT4 and below.
2009-06-04 12:11:51 +02:00
Paul Vriens
27485d9b53
ole32/tests: Fix a crash on NT4 and below.
2009-06-03 11:26:55 +02:00
Paul Vriens
df24ec66dd
ole32/tests: Run more tests on Win9x by using A-functions.
2009-06-03 11:26:47 +02:00
Paul Vriens
08a6e0c2d4
ole32/tests: Move common variables to the top.
2009-06-03 11:26:36 +02:00
Huw Davies
16dc037859
ole32: In simple mode keep the stream size above the small block limit.
2009-06-02 11:57:21 +02:00
Huw Davies
02fc79b2c9
ole32: In simple create mode the size returned by IStream_Stat is actually the current stream position.
2009-06-02 11:57:21 +02:00
Huw Davies
cc8c36c44c
ole32: In simple mode, CreateStream with the STGM_CREATE flag should fail.
2009-06-02 11:57:21 +02:00
Huw Davies
0faf155887
ole32: Store the creation flag - STGM_SIMPLE depends on this.
2009-06-02 11:57:21 +02:00
Huw Davies
8b7b67712f
ole32: Rename a parameter to better reflect its use.
2009-06-02 11:57:21 +02:00
Vincent Povirk
6f05770fbf
ole32: Don't ignore a failure to delete the old element in CreateStorage.
2009-06-01 16:16:02 +02:00
Vincent Povirk
e21adbf45a
ole32: Fix return code of DeleteStorage for read only storage.
2009-06-01 16:16:02 +02:00
Vincent Povirk
93a155381f
ole32: Fix crash when calling CreateStorage on read only storage.
2009-06-01 16:16:02 +02:00
Vincent Povirk
4a0901fb87
ole32: Fix crash when calling CreateStream on read only storage.
2009-06-01 16:16:02 +02:00
Vincent Povirk
5aab52c977
ole32: Add some tests for read only storage objects.
2009-06-01 16:16:02 +02:00
Alexandre Julliard
fb640601ea
ole32: Fix some pointer conversion warnings on 64-bit.
2009-05-28 15:24:25 +02:00
Huw Davies
628a8743d2
ole32/tests: Fix tests on systems without IE installed.
2009-05-25 11:21:12 +02:00
Huw Davies
485811cf9c
ole32: Explicitly add the three ULONGs from the METAFILEPICT struct to allow for padding in the 64-bit version.
2009-05-22 15:16:29 +02:00
Huw Davies
ed09de1e6f
ole32: Fix remote HMETAFILEPICT marshalling on 64 bit systems.
2009-05-21 16:17:52 +02:00
Huw Davies
825a1b7595
ole32/tests: Use the current stream position to determine the marshal data size.
2009-05-21 16:17:52 +02:00
Vincent Povirk
b49d541cb5
ole32: Process sent and DDE messages in CoWaitForMultipleHandles.
2009-05-20 10:54:26 +02:00
Huw Davies
82b4b6423c
ole32/tests: Exercise the HGLOBAL marshaller over a range of block sizes.
2009-05-20 10:51:04 +02:00
Huw Davies
8aa2db4724
ole32: Use OleCreateFromDataEx to implement OleCreateFromData.
2009-05-19 15:46:41 +02:00
Huw Davies
d2837d91d0
ole32: Add support for retrieving the data from CF_EMBEDDEDOBJECT.
2009-05-19 15:46:35 +02:00
Huw Davies
63eb810428
ole32: Add support for retrieving data from IPersistStorage.
2009-05-19 15:46:29 +02:00
Huw Davies
a9f96ad60a
ole32: Beginnings of OleCreateFromDataEx.
2009-05-19 15:46:24 +02:00
Huw Davies
564b960428
ole32/tests: Cope with an alignment hole between the two marshalled interfaces.
2009-05-19 15:46:17 +02:00
Huw Davies
707f962896
ole32/tests: Remove assumptions about the size of marshalled data.
2009-05-19 15:46:11 +02:00
Huw Davies
c36826705c
ole32: Implement TYMED_ISTORAGE marshalling.
2009-05-18 13:27:53 +02:00
Huw Davies
3b15bbfd37
ole32: Implement TYMED_ISTREAM marshalling.
2009-05-18 13:27:49 +02:00
Huw Davies
10919f7fb9
ole32/tests: Add tests for TYMED_ISTREAM marshalling.
2009-05-18 13:27:43 +02:00
Huw Davies
cc68fc4467
ole32: Add support for marshalling pUnkForRelease.
2009-05-18 13:27:37 +02:00
Huw Davies
4581af5863
ole32/tests: Add tests for STGMEDIUM marshalling with a non-NULL pUnkForRelease.
2009-05-18 13:27:34 +02:00
Huw Davies
5b6312f24c
ole32: Implement the WdtpInterfacePointer marshal functions.
2009-05-18 13:27:30 +02:00
Huw Davies
affe9a1e6e
ole32/tests: Show that it's the loword of the separate flag parameter that determines the marshalling context.
2009-05-18 13:27:24 +02:00
Huw Davies
e4d43c1099
ole32: Add proxies and stubs for FillAppend and FillAt.
2009-05-18 13:24:42 +02:00
Huw Davies
069d57502d
ole32: Add proxies and stubs for ReadAt and WriteAt.
2009-05-18 13:24:37 +02:00
Huw Davies
5abb393eb7
ole32: Add proxies and stubs for OpenStream and EnumElements.
2009-05-18 13:24:31 +02:00
Huw Davies
aa13c7c522
ole32: Add proxies and stubs for Seek and CopyTo.
2009-05-18 13:24:19 +02:00
Huw Davies
e8be59b8f8
ole32: Add proxies and stubs for Read and Write.
2009-05-18 13:24:13 +02:00
Huw Davies
374aacdc9f
ole32: Add proxies and stubs for GetData and GetDataHere.
2009-05-18 13:24:00 +02:00
Huw Davies
b045342ae8
ole32/tests: Add tests to show the WdtpInterfacePointer marshal data looks like the result of CoMarshalInterface.
2009-05-12 14:57:54 +02:00
Huw Davies
782ec11a0d
ole32/tests: Make the size tests for the WdtpInterfacePointer marshaller more restrictive.
2009-05-12 14:57:51 +02:00
Alexandre Julliard
18419dab31
ole32/tests: Fix the clipboard format test on Win64.
2009-05-08 13:52:05 +02:00
Hans Leidekker
bd4975acb0
ole32: Use existing MTA in CoGetClassObject and CoCreateInstance.
...
Custom actions in the CS3 installer depend on this.
2009-05-05 14:14:20 +02:00
Hans Leidekker
d2820c0684
ole32: Add tests to show that COM needs to be initialized only once for multi-threaded apartments.
2009-05-05 14:14:10 +02:00
Huw Davies
66d04f8eb6
ole32: Implement GetDataHere.
2009-04-30 17:20:00 +02:00
Huw Davies
2e11733f45
ole32: Don't ask for a name if it's not required.
2009-04-28 14:47:54 +02:00
Huw Davies
d2837cb94d
ole32/tests: Improve the traces in the test.
2009-04-24 15:02:23 +02:00
Huw Davies
739ca6deae
ole32: Fix a couple of comments.
2009-04-24 15:02:11 +02:00
Huw Davies
12edc21a3a
ole32: Expose the marshalled data on the clipboard rather than as a window prop so that other processes can actually read it.
2009-04-24 15:02:05 +02:00
Austin English
2fe86fb7cd
ole32: Rename a macro to prevent a conflict on NetBSD.
2009-04-24 11:51:53 +02:00
Aric Stewart
46da8ef18b
ole32: CoGetTreatAsClass should return S_FALSE if it cannot even find the key for the requested CLSID.
2009-04-24 11:51:35 +02:00
Huw Davies
211268a74e
ole32: Rewrite OleQueryCreateFromData so it compares clipboard format ids rather than strings and be sure to free the enumerator.
2009-04-23 18:14:27 +02:00
Huw Davies
b133e94b62
ole32: Register a few more clipboard formats and make them have global scope.
2009-04-23 18:14:27 +02:00
Huw Davies
689c510f63
ole32: Add a stub for OleCreateFromDataEx.
2009-04-23 18:14:27 +02:00
Huw Davies
11cb788f35
ole32/tests: For win9x and winme the size of the data on the clipboard may be larger than expected.
2009-04-23 18:14:03 +02:00
Huw Davies
083473659b
ole32/tests: Rename variable to avoid a conflict on some systems.
2009-04-22 17:00:56 +02:00
Huw Davies
aaed9de51a
ole32: Improve the TRACEs by printing the fmtetc contents.
2009-04-22 17:00:53 +02:00
Huw Davies
6928615d5c
ole32/tests: Add some tests to exercise the enumerator.
2009-04-22 14:43:37 +02:00
Huw Davies
1556d831c8
ole32/tests: win9x and winme don't enumerate duplicated cfFormats.
2009-04-22 14:43:33 +02:00
Huw Davies
d18875f306
ole32/tests: win64 sets the lsb of the final DWORD in the ole private data header.
2009-04-22 14:43:20 +02:00
Huw Davies
f9d48e7ba0
ole32/tests: win9x and winme don't have CF_UNICODETEXT.
2009-04-22 14:43:17 +02:00
Huw Davies
508d6db8e2
ole32/tests: win9x, winme and nt4 ignore the target device.
2009-04-22 14:43:13 +02:00
Huw Davies
57d555c796
ole32/tests: OleGetClipboard doesn't return the same object under win9x, winme and nt4.
2009-04-22 14:43:09 +02:00
Huw Davies
08d4352f9b
ole32: Add support for enumerating non-ole clipboard formats.
2009-04-21 13:26:17 +02:00
Huw Davies
575b0e1435
ole32: Don't set cf_dataobject if we're clearing the clipboard.
2009-04-21 13:21:19 +02:00
Huw Davies
1e73a54690
ole32: Check that the target devices match.
2009-04-21 13:16:48 +02:00
Huw Davies
bdca138d5a
ole32: Make get_priv_data return target device ptrs (rather than offsets) and add a couple of helper functions to simplify this process.
2009-04-21 13:16:37 +02:00
Huw Davies
aadd07ca9d
ole32/tests: Tests for a flushed clipboard.
2009-04-16 11:37:39 -05:00
Huw Davies
c648dcf615
ole32: Try global and stream types if the requested types don't match the source.
2009-04-16 11:37:30 -05:00
Huw Davies
18d413bb74
ole32: OleFlushClipboard should render all formats to the clipboard.
2009-04-16 11:37:25 -05:00
Huw Davies
9bacd00ce7
ole32: Add support for getting storage based objects from a flushed clipboard.
2009-04-16 11:37:18 -05:00
Huw Davies
25d7ecde47
ole32: Add support for getting stream based objects from a flushed clipboard.
2009-04-16 11:37:10 -05:00
Huw Davies
f8a9ca2cfa
ole32: Add support for getting global handle objects from a flushed clipboard.
2009-04-16 11:37:03 -05:00
Huw Davies
718831b77c
ole32/tests: Add a few more reference count tests.
2009-04-16 11:36:53 -05:00
Huw Davies
fca4ed5596
ole32: After a call to GetData the consumer should hold a ref on the source data object.
2009-04-16 11:36:42 -05:00
Huw Davies
d2156f3894
ole32: Now that the consumer side of the clipboard separated from the main clipboard object, simplify the initialization code.
2009-04-16 11:36:39 -05:00
Huw Davies
df08d463c9
ole32: The consumer data object is not a singleton, but reflects the state of the clipboard when it was acquired.
2009-04-16 11:36:00 -05:00
Huw Davies
f8a1b7e5a5
ole32/tests: Tests that show the consumer data object isn't a singleton.
2009-04-16 11:35:24 -05:00
Huw Davies
4311691a88
ole32: If there's a current data object on the ole clipboard GetData should use it.
2009-04-16 11:35:15 -05:00
Huw Davies
6d4a394099
ole32: Store the marshalled IDataObject in a window property of the clipboard window.
...
This is somewhat different from how Windows behaves. Windows stores
two properties; an IID and an endpoint number.
2009-04-16 11:35:08 -05:00
Huw Davies
1ec12f68b1
ole32: Rename a variable.
2009-04-16 11:34:55 -05:00
Huw Davies
bd9eb3b527
ole32: Don't pass a window if we're reading from the clipboard.
2009-04-16 11:34:49 -05:00
Huw Davies
6526b570e1
ole32: Add a function to return (and possibly create) the clipboard's window.
2009-04-16 11:34:39 -05:00
Huw Davies
6ce9922f3d
ole32: Add a helper function to set and release the source IDataObject.
2009-04-16 11:34:06 -05:00
Huw Davies
bf8d85cee0
ole32: Add a helper function to return the ole clipboard structure.
2009-04-16 11:33:57 -05:00
Huw Davies
72f53ed4d7
ole32: Unicodify window creation. Don't register the class as global.
2009-04-16 11:33:50 -05:00
Huw Davies
5defc71dfe
ole32: Use helper function to duplicate global memory.
2009-04-16 11:33:40 -05:00
Huw Davies
469d6ea2df
ole32: Add support for rendering storage data to the clipboard.
2009-04-16 11:33:29 -05:00
Huw Davies
f4745c0a06
ole32: Make all formats available to the clipboard.
2009-04-16 11:33:19 -05:00
Huw Davies
1e8727aacf
ole32: Add support for rendering stream data to the clipboard.
2009-04-16 11:33:03 -05:00
Huw Davies
5e557d83ca
ole32: Rewrite the clipboard window's wndproc to use the cached enum data.
2009-04-16 11:30:38 -05:00
Huw Davies
b958dfdc47
ole32: Change helper function to return the matching entry.
2009-04-16 11:30:09 -05:00
Huw Davies
e58a9db129
ole32: Store a cached version of the local data object's enumeration.
2009-04-16 11:30:00 -05:00
Alexandre Julliard
c378490d7d
ole32/tests: Avoid size_t in traces.
2009-04-08 16:09:52 +02:00
Vincent Povirk
9c02fda4a9
ole32: When renaming a storage element, delete from the current iface.
2009-04-02 16:28:30 +02:00
Huw Davies
628332aee1
ole32: Change the global memory duplicator to return HRESULT.
2009-04-01 15:23:20 +02:00
Huw Davies
3cb4ab588d
ole32: Rename a few variables and remove a couple of meaningless comments.
2009-04-01 15:23:14 +02:00
Huw Davies
f2ba37e5b9
ole32: Move the embed source hack to a separate function.
2009-04-01 15:23:09 +02:00
Huw Davies
126ec0181f
ole32/tests: Set tymed in GetData and AddRef the interfaces (ReleaseStgMedium releases them even if pUnkForRelease is non-NULL).
2009-04-01 15:23:03 +02:00
Huw Davies
61fa9bb061
ole32/tests: Add some tests for stream data.
2009-03-31 15:00:38 +02:00
Huw Davies
d28d731b61
ole32/tests: Add broken return value for win98.
2009-03-31 15:00:33 +02:00
Huw Davies
5492fd2b0d
ole32/tests: On win9x GetClipboardData returns a new handle.
2009-03-31 15:00:28 +02:00
Huw Davies
2c6be9521b
ole32: Simplify some of the error handling.
2009-03-31 15:00:23 +02:00
Huw Davies
59501e037b
ole32/tests: Tests for EnumFormatEtc.
2009-03-30 16:42:46 +02:00
Huw Davies
89dcb968a3
ole32/tests: Fix DVTARGETDEVICE offsets.
2009-03-30 16:42:41 +02:00
Huw Davies
969e5d7ee1
ole32: Reimplement the formatetc enumerator using 'Ole Private Data'.
2009-03-30 16:42:22 +02:00
Huw Davies
fc78f552a0
ole32: AddRef does not return an HRESULT. Have the constructor create the object with one reference.
2009-03-30 16:42:12 +02:00
Huw Davies
25f1b058a8
ole32: Change the enum formatetc constructor to return HRESULT.
2009-03-30 16:42:08 +02:00
Huw Davies
1cc023c53a
ole32: Don't hold a reference on the parent IDataObject.
2009-03-30 16:42:03 +02:00
Huw Davies
1213964330
ole32: Rename a variable.
2009-03-30 16:41:56 +02:00
Huw Davies
d93688a721
ole32: Use a helper function to access the enum format implementation.
2009-03-30 16:41:51 +02:00
Huw Davies
690202440e
ole32: Set the 'Ole Private Data' clipboard format.
2009-03-26 16:11:24 +01:00
Huw Davies
b7a2e83ddb
ole32: OleFlushClipboard shouldn't call EmptyClipboard.
2009-03-26 16:11:21 +01:00
Huw Davies
b75caee2ab
ole32/tests: Tests for the 'Ole Private Data' clipboard format.
2009-03-25 15:43:36 +01:00
Huw Davies
3383db6107
ole32: Move the code to set the clipboard formats to a separate function.
2009-03-25 15:43:27 +01:00
Huw Davies
ef4b6b8749
ole32: Store the ole clipboard window's HWND in the DataObject clipboard format.
2009-03-23 15:52:18 +01:00
Huw Davies
e77ab142e4
ole32: Register DataObject clipboard format.
2009-03-23 15:52:18 +01:00
Huw Davies
c0fbbe7d91
ole32: Use IsEqualIID rather than memcmp.
2009-03-23 15:52:18 +01:00
Huw Davies
319d0ddca6
ole32: Simplify QueryInterface.
2009-03-23 15:52:18 +01:00
Huw Davies
d72181381e
ole32: pFmt isn't exposed to the client, so simplify its allocation.
2009-03-23 15:52:18 +01:00
Huw Davies
8beb83866f
ole32: Rearrange functions to eliminate forward declarations.
2009-03-23 15:52:18 +01:00
Huw Davies
96bd8c5a7d
ole32: Add a helper function to retrieve the implementation ptr.
2009-03-23 15:52:18 +01:00
Huw Davies
e7ffa2aeb5
ole32: Don't allocate the ole clipboard object in global memory - we're not going to directly expose it to other processes.
2009-03-23 15:52:18 +01:00
Huw Davies
e6eeb3aa17
ole32: Remove unused static variable.
2009-03-23 15:52:18 +01:00
Michael Stefaniuc
efbb4ebf3e
widl: Output "LONG" instead of "long" for a 32bit integer.
...
long is always 32bit in IDL files but that's not true in C.
2009-03-13 11:15:21 +01:00
Alexandre Julliard
7b6dd2c9f8
ole32: Get rid of WINE_StringFromCLSID and A->W conversions.
2009-03-12 13:09:52 +01:00
Alexandre Julliard
6b40f64e18
ole32: Make compobj.dll into a stand-alone 16-bit module.
2009-03-12 13:09:31 +01:00
Alexandre Julliard
2e1b309fba
ole32: Make ole2.dll into a stand-alone 16-bit module.
2009-03-11 17:05:20 +01:00
Alexandre Julliard
f7fe2edadd
ole32: Make storage.dll into a stand-alone 16-bit module.
2009-03-11 17:03:10 +01:00
Alexandre Julliard
7511d67447
ole32: Make ole2nls.dll into a stand-alone 16-bit module.
2009-03-11 16:53:06 +01:00
Alexandre Julliard
dc81065d44
ole32: Make ole2thk.dll into a stand-alone 16-bit module.
2009-03-11 16:51:09 +01:00
Alexandre Julliard
b4bbe0c4a0
ole32: Make ole2prox.dll into a stand-alone 16-bit module.
2009-03-11 16:51:09 +01:00
Alexandre Julliard
ea6382623e
ole32: Make ole2conv.dll into a stand-alone 16-bit module.
2009-03-11 16:51:09 +01:00
Rob Shearman
d974922698
ole32: Fix a memory leak in an error path in COMPOBJ_DllList_Add.
2009-03-09 12:04:35 +01:00
Paul Vriens
e31df3616a
ole32/tests: Remove an unused function declaration.
2009-03-06 15:39:30 +01:00
Huw Davies
561df2f1c6
ole32: Add support for VT_DECIMAL.
2009-03-06 15:39:02 +01:00
Huw Davies
5e0d4c774c
ole32/tests: win9x and winnt don't include the trailing '\0'.
2009-02-26 15:13:26 +01:00
Alexandre Julliard
b55f6dfed5
ole32/tests: Don't hang forever in the child process.
2009-02-17 14:58:45 +01:00
Rob Shearman
2803516d26
ole32: Round the extected size in the marshal and moniker tests using the results of sizing a global, not a heap pointer.
...
The rounding isn't the same on Win9x, and the size being compared to
is that of a global handle.
2009-02-17 12:47:53 +01:00
Rein Klazes
788add572b
ole32: In PropVariantCopy() fix calculation size of array that contain pointers, not characters.
2009-02-16 15:35:15 +01:00
Michael Stefaniuc
0449701c31
ole32: Remove superfluous pointer casts.
2009-02-11 12:29:56 +01:00
Rob Shearman
ad880ba057
ole32: Fix a test failure in the moniker tests on Win9x.
...
Also fix a crash in running the tests on Win95.
2009-02-11 11:42:21 +01:00
Rob Shearman
1e8ae571f5
ole32: Fix some test failures in the free threaded marshaller tests on Win9x & NT4.
...
These platforms only write 8 bytes into the stream so cope appropriately.
2009-02-11 11:42:17 +01:00
Michael Stefaniuc
a90828aa60
ole32: Use GetWindowLongPtr/SetWindowLongPtr for pointers.
2009-02-10 12:33:00 +01:00
Rob Shearman
b859d2052b
ole32: Allow some optional methods to be called in the OleCreate tests.
...
Fixes failures in these tests on NT4.
2009-02-09 14:03:09 +01:00
Rob Shearman
d26250fd08
ole32: Add framework in the ole2 tests for having optionally called methods.
2009-02-09 14:03:03 +01:00
Rob Shearman
db851a1d2a
ole32: Output the size that we didn't expect in the HGLOBAL marshalling tests.
2009-02-09 14:02:29 +01:00
Rob Shearman
f2b17029aa
ole32: Fix some test failures in the HGLOBAL marshalling tests on 64-bit Windows.
2009-02-09 13:58:07 +01:00
Rob Shearman
2eca96af67
ole32: Fix CLIPFORMAT marshalling on 64-bit platforms by not using the wireCLIPFORMAT type.
...
The wireCLIPFORMAT represents the memory equivalent format of the wire
format and not the wire format itself.
Also update the tests to do the same.
2009-02-09 13:58:04 +01:00
Rob Shearman
40660894c8
ole32: Fix an ole2 test failure on Win9x and NT4.
...
The combination of CF_BITMAP and TYMED_GLOBAL isn't accepted on newer
versions of Windows, so mark it as broken.
2009-02-06 13:03:16 +01:00
Andrew Talbot
772a9b3540
ole32: Remove superfluous shadow variables.
2009-02-03 12:39:35 +01:00
Rob Shearman
712e33e669
ole32: Initialise more of the context passed into user marshaling functions in the tests for these functions.
2009-02-02 11:55:29 +01:00
Rob Shearman
d3085abc08
Change parameter type from size_t to SIZE_T for MIDL_user_allocate.
2009-02-02 11:55:21 +01:00
Ge van Geldorp
4b27dfec93
ole32/tests: Write to HKCR instead of HKCU/Software/Classes for the benefit of older Windows versions.
2009-01-29 15:59:39 +01:00
Rob Shearman
0025bdf607
ole32: Fix a missing CoUninitialize in test_CoFreeUnusedLibraries.
2009-01-28 14:15:48 +01:00
Rob Shearman
9353dff5b3
ole32: Fix some tests that fail on NT4 and Win9x.
...
Round the expected sizes up to the alignment used by HeapSize, which
is 4 on Win9x and NT4 but 1 in more recent versions.
Additionally fix an IGlobalInterfaceTable test which erroneously
succeeds on these older OSs.
2009-01-28 14:15:42 +01:00
Huw Davies
bc93467f5d
ole32: The bigblockfile on ILockBytes implementation should work on any ILockBytes not just those based on HGLOBAL.
2009-01-28 12:31:53 +01:00
Huw Davies
bfc32ae0c6
ole32: Add a helper function to return the file size and modify EnsureExists to use it.
2009-01-28 12:31:25 +01:00
Huw Davies
cc7edbe3b5
ole32: Move functions around in file to avoid forward declarations.
2009-01-28 12:31:08 +01:00
Huw Davies
70ee112337
ole32: Move private data structure out of header file.
2009-01-28 12:31:01 +01:00
Ge van Geldorp
f7a34db378
ole32/tests: Some Windows versions need the class to be registered.
2009-01-26 16:06:02 +01:00
Nikolay Sivov
32cc4011ee
kernel32: Make GetOverlappedResult crash on NULL args as native does.
2009-01-22 15:28:24 +01:00
Michael Stefaniuc
bdbfac5996
ole32/tests: Remove superfluous pointer casts.
2009-01-20 12:34:31 +01:00
Andrey Turkin
644220b518
ole32: Prevent recursion when CLSIDFromString is passed empty string.
2009-01-20 12:23:11 +01:00
Andrey Turkin
d0a345f914
ole32: Add a few fields to OLE TLS area to match native memory layout.
2009-01-19 14:46:02 +01:00
Andrey Turkin
a06f568a2a
ole32: Add CoGetCallContext and CoSwitchCallContext implementations.
2009-01-19 14:44:32 +01:00
Andrey Turkin
d20ab01ed2
ole32: Do not crash in WriteClassStg if passed NULL pointer.
2009-01-15 12:42:33 +01:00
Andrey Turkin
37d27c38ce
ole32: Add IContextCallback interface to context object.
2009-01-15 12:42:12 +01:00
Andrey Turkin
8ff76d24f6
ole32/tests: Add test for IContextCallback.
2009-01-14 14:16:21 +01:00
Austin English
753affe48d
ole32: Add tests for CoInitializeEx.
2009-01-13 16:17:02 +01:00
Andrew Talbot
9e537ae06c
ole32: Declare a function static.
2009-01-12 13:11:01 +01:00
Alexandre Julliard
8377b2464b
ole32/tests: Fix marshalling data layout for Win64.
2009-01-10 21:06:09 +01:00
Nikolay Sivov
37d4349636
ole32: Some tests for IMoniker::IsRunning with NULL args.
2009-01-09 14:06:13 +01:00
Nikolay Sivov
df0ecdfd30
ole32: Fix some comment typos.
2009-01-09 14:06:13 +01:00
Francois Gouget
ad587aa036
ole32: Don't use the default debug channel before it has been defined.
2009-01-08 14:52:57 +01:00
Nikolay Sivov
11c1d7a0e7
ole32: Fix return value for DefaultHandler_GetMiscStatus.
2009-01-07 12:27:34 +01:00
Alexandre Julliard
e793a2ba35
ole32/tests: Fix a structure size check for Win64.
2009-01-05 15:37:48 +01:00
Michael Stefaniuc
e86eb8efa6
include: Change RPC_STATUS from long to LONG for Win64 compatibility.
...
Also fix the compiler warnings introduced by this change.
2009-01-04 13:34:38 +01:00
Michael Karcher
11aef5e0a2
ole32: Add HICON user marshalling stubs.
2009-01-04 13:33:12 +01:00
Alexandre Julliard
68bd54b558
ole32/tests: Fix a pointer casting warning on 64-bit.
2009-01-03 20:14:11 +01:00
Ge van Geldorp
f5df407522
ole32/tests: Add declarations which are not present in SDK headers.
2009-01-03 14:55:32 +01:00
Ge van Geldorp
69c5fca81a
ole32/tests: Work around broken Windows urlmon.dll.
2009-01-03 14:55:32 +01:00
Rob Shearman
4a67e7a71e
include: Include winuser.h from generated oleidl.h header.
...
oleidl.h isn't usable without winuser.h being included first due to
using the LPMSG type, so explicitly include it by adding a cpp_quote
statement to oleidl.idl. In the PSDK it is implicitly included as
IDL-generated header includes windows.h, which in turn includes
winuser.h.
2008-12-29 14:41:00 +01:00
Andrew Talbot
eceb0cce82
ole32: Superfluous semicolons fix.
2008-12-24 19:59:22 +01:00
Nikolay Sivov
55658d061c
ole32: Fix return value for IDataObject_GetData.
2008-12-22 10:28:37 +01:00
Nikolay Sivov
0eeb042067
ole32: Make OleSetClipboard affected by previous OleInitialize() calls.
2008-12-19 17:36:36 +01:00
Andrew Talbot
96d7c6e2ea
ole32: Remove unused Wine debug channel.
2008-12-19 17:36:35 +01:00
Hans Leidekker
8bd9a3aa09
janitorial: Don't depend on user32 for the self registration functions.
2008-12-17 11:38:32 +01:00
Francois Gouget
e7b3671813
ole32: Use the IStream16_(CreateStream,CreateStorage,Write) implementations.
2008-12-15 12:24:58 +01:00
Francois Gouget
0b1d8be037
ole32/tests: Make test_runnable() static.
2008-12-12 11:42:31 +01:00
Francois Gouget
ec4d74baef
ole32: Fix the STORAGE_dump_pps_entry() description.
2008-12-12 11:41:37 +01:00
Alexandre Julliard
4bb2199c8e
ole32: Make a function static.
2008-12-04 12:47:56 +01:00
Alexandre Julliard
04fb1d656a
ole32: Remove some unused functions.
2008-12-03 12:11:09 +01:00
Alexandre Julliard
16b5e6b9b5
ole32: Register interfaces through dlldata.c as far as possible.
2008-12-02 20:52:09 +01:00
Alexandre Julliard
1bd26cca94
ole32: Use a dlldata.c file instead of maintaining the data manually.
2008-12-01 18:56:15 +01:00
Maarten Lankhorst
08c78e07a9
ole32: Fix releasing spy.
2008-11-28 12:56:47 +01:00
Huw Davies
ed6bcc27fa
ole32: Forward the ASYNC_STGMEDIUM user marshallers to the STGMEDIUM quadruple.
2008-11-28 12:53:19 +01:00
Maarten Lankhorst
92dca953d9
ole32: Add Co*InitializeSpy functions.
2008-11-26 13:44:36 +01:00
Francois Gouget
b3bf746ff9
Straighten out some ellipses.
2008-11-26 12:33:34 +01:00
Francois Gouget
66063ae4a4
ole32: Remove WINAPI on static functions where not needed.
2008-11-26 12:33:13 +01:00
Francois Gouget
c584c2d12c
ole32: Remove __RPC_USER on static functions where not needed.
2008-11-26 12:10:38 +01:00
Huw Davies
8355eeaa21
ole32: Defer releasing the delegate interfaces until after we return from an OnClose notification.
2008-11-25 12:17:27 +01:00
Huw Davies
8730bf66c9
ole32: Factor out the code to release the delegate interfaces.
2008-11-25 12:17:24 +01:00
Francois Gouget
3b140ccb0e
Assorted spelling fixes.
2008-11-17 16:04:39 +01:00
Alexandre Julliard
f8b8478f91
ole32/tests: Fix a couple of test failures on Win9x and NT4.
2008-11-13 21:45:57 +01:00
Alexandre Julliard
4bff91265a
ole32/tests: Don't hardcode the Ansi codepage value.
2008-11-13 21:45:41 +01:00
Alexandre Julliard
48d41dbc37
ole32/tests: Use a CLSID that is more likely to exist on old Windows versions.
2008-11-13 21:45:25 +01:00
Alexandre Julliard
5ca20cd482
ole32/tests: Fix a couple of global stream test failures on Win9x.
2008-11-13 21:45:04 +01:00
Huw Davies
706b29c47c
ole32: Don't issue a warning if a flat copy is all that's required.
2008-11-12 14:14:55 +01:00
Paul Vriens
a9c3d6f207
ole32/tests: Don't crash on NT4.
2008-11-11 11:40:55 +01:00
Michael Stefaniuc
095568dfe9
ole32: Remove some superfluous casts of void pointers and zero.
2008-11-06 11:09:54 +01:00
Michael Stefaniuc
79e31f6d40
ole32: Do not cast NULL.
2008-11-03 13:41:17 +01:00
Huw Davies
5937ddd403
ole32: Call the object's GetClassID if it's running.
2008-10-31 14:01:17 +01:00
Huw Davies
a26d67b14e
ole32: Implement IEnum*_Next marshallers.
2008-10-28 12:14:14 +01:00
Huw Davies
b05d392dfb
ole32: Try to load the '\1Ole' stream and create it if it doesn't exist.
2008-10-28 12:14:11 +01:00
Huw Davies
0cc2c53107
ole32: Create the '\1Ole' stream.
2008-10-28 12:14:06 +01:00
Austin English
8301325989
ole32: Implement IEnumFORMATETC_Next_Proxy and IEnumFORMATETC_Next_Stub.
2008-10-27 12:38:24 +01:00
Sylvain Petreolle
e7d951320a
ole32: Stub implementation for CoGetCallerTID.
2008-10-23 15:19:50 +02:00
Huw Davies
92202feff3
ole32: Call the appropriate storage function when we run the object.
2008-10-23 12:13:49 +02:00
Huw Davies
94d753c63d
ole32: Query the object's dirty state if it's running.
2008-10-21 13:22:51 +02:00
Huw Davies
3a0ed83fb0
ole32: Call the object's IPersistStorage_HandsOffStorage() if the object is running.
2008-10-21 13:22:51 +02:00
Huw Davies
89edf3a52f
ole32: Call the object's IPersistStorage_SaveCompleted() if the object is running.
2008-10-21 13:22:51 +02:00
Huw Davies
72f82c04ec
ole32: Call the object's IPersistStorage_Save() if the object is running.
2008-10-21 13:22:51 +02:00
Huw Davies
5b1520761d
ole32: Call the object's IPersistStorage_InitNew() if the object is running.
2008-10-21 13:22:51 +02:00
Huw Davies
3019a8f195
ole32: Call the object's IPersistStorage_Load() if the object is running.
2008-10-21 13:22:51 +02:00
Huw Davies
ed28886f9d
ole32: Call the object's IOleObject_IsUpToData() if the object is running.
2008-10-21 13:22:51 +02:00
Huw Davies
5ba96d7ae1
ole32: Call the object's own IOleObject_GetUserType() if the object is running.
2008-10-21 13:22:51 +02:00
Huw Davies
f2cf617f00
ole32: Partial implementation of IOleObject_Update().
2008-10-21 13:22:50 +02:00
Alexandre Julliard
ebdb933b6d
ole32: Convert source files to utf-8.
2008-10-18 19:20:29 +02:00
Alexandre Julliard
19966f8c0e
comcat: Moved all the implementation to ole32 where it belongs.
2008-10-11 13:30:08 +02:00
Alexandre Julliard
d4f107f54b
comcat: Moved dll registration to ole32.
2008-10-11 13:08:22 +02:00
Paul Vriens
6d15749d14
ole32/tests: Fix two failures on NT4.
2008-10-09 13:01:40 +02:00
Michael Stefaniuc
3ed8ffcc99
ole32: Use the right FAILED/SUCCEEDED macro instead of negating the opposite.
2008-10-08 13:41:58 +02:00
Aric Stewart
39b2c1eb50
ole32: Handle GetMenuItemCount returning -1 by changing UINT to INT (Coverity 228).
2008-10-06 13:51:06 +02:00
Huw Davies
ec73ad29e0
ole32: Remove an unneeded WINAPI and remove some useless comments.
2008-10-06 12:51:53 +02:00
Rob Shearman
f16bbf3282
ole32: Fix clipboard test failures on some versions of Windows.
...
Some versions of ole32 don't test that the lindex field of the
FORMATETC structure passed into functions is valid.
2008-09-29 17:25:00 -05:00
Rob Shearman
7b564cbf17
ole32: Create a dummy window for use in the drag and drop API tests.
...
As a window being registered for drag and drop is a system-global
property, the tests could be affected by other processes in the
system.
2008-09-29 17:24:42 -05:00
Rob Shearman
de03fe3c0f
ole32: Update comments in compobj.c.
2008-09-16 22:33:14 +02:00