Commit Graph

878 Commits

Author SHA1 Message Date
Mike McCormack 17c3106896 Eliminate casts of the return value of HeapAlloc. 2005-03-21 11:25:13 +00:00
Vincent Béron 811725ac20 Correct and complete some api documentation. 2005-03-21 10:55:13 +00:00
Troy Rollo 963b63ecbd ix test for STGM_SHARE_EXCLUSIVE on nameless DocFiles. 2005-03-21 10:30:01 +00:00
Robert Shearman 1571df5722 Fix memory leak in OleDuplicateData on error path (found by Smatch). 2005-03-19 17:05:12 +00:00
Jon Griffiths dbf222f3aa Use LMEM_ flags for LocalAlloc(), not GMEM_ (GlobalAlloc). 2005-03-17 20:53:37 +00:00
Juan Lang be84f8d9e6 Begin implementing IPropertyStorage. 2005-03-17 20:50:35 +00:00
Robert Shearman 1b5ebabdce - Add critsec debugging info.
- Move the modal loop called during RPCs into CoWaitForMultipleHandles.
- Use a mutex for long remoting calls to IRemUnknown methods.
- Remove locking in apartment_disconnectproxies as it is not needed.
- Use PostMessage instead of SendMessage so we can run the message
  loop or not as appropriate.
2005-03-17 10:26:20 +00:00
Juan Lang ac24801db0 Add a comment about byte order, change types to reduce casting and not
cast away constness.
2005-03-17 10:25:13 +00:00
Joris Huizer 34a0463bca A few memory checks avoiding memory leaks. 2005-03-14 10:46:50 +00:00
Mike McCormack 77fc6a5d82 StgOpenStorage shouldn't open zero length storage files. 2005-03-11 13:17:10 +00:00
Robert Shearman 8971f06225 - Rename apartment functions to become more object-oriented.
- Rename register_ifstub to marshal_object to more accurately describe
  what it does.
- Add new function, apartment_getoxid, to prepare for a possible
  future patch where remoting is started on demand.
2005-03-11 10:19:10 +00:00
Juan Lang 23805995a6 Fix the calling convention of DllCanUnloadNow. 2005-03-10 17:25:02 +00:00
Mike McCormack 6f2f76c410 Shared reading of storage files requires STGM_TRANSACTED. 2005-03-09 11:44:59 +00:00
Robert Shearman 527ef47d70 Make each ifproxy have its own channel buffer to fix a bug where a
proxy with multiple interfaces could invoke the wrong stub buffer on
the server.
2005-03-07 17:14:11 +00:00
Mike McCormack e9d334d0c9 Fix more incorrect uses of STGM_ enumerations. 2005-03-07 12:24:42 +00:00
Juan Lang 01239efa4a Implement StgCreatePropSetStg. 2005-03-07 10:59:09 +00:00
Mike McCormack a7609ee155 Test and fix grfMode handling in StgOpenDocfile. 2005-03-05 10:48:11 +00:00
Alexandre Julliard 53f3d4c65a Authors: Rob Shearman <rob@codeweavers.com>, Mike Hearn <mh@codeweavers.com>
- Add re-entrancy tests to the test suite.
- Run RPCs on a new thread client side so we can pump the message
  loop.
2005-03-04 12:30:47 +00:00
Mike McCormack 607b43e6b4 Implement StgSetTimes. 2005-03-04 10:48:17 +00:00
Francois Gouget fbb3343547 Assorted spelling fixes. 2005-03-02 13:53:50 +00:00
Alexandre Julliard d0ee9f9309 Avoid spaces before preprocessor directives, that's not portable. 2005-03-02 12:23:20 +00:00
Juan Lang 4c8676cdbf Move vtbl to end of file and get rid of unnecessary prototypes. 2005-03-01 10:41:25 +00:00
Jon Griffiths eb5bf7dd38 Documentation spelling fixes. 2005-02-25 14:07:56 +00:00
Paul Vriens 8922da9ed4 Added some TRACE statements. 2005-02-25 13:58:37 +00:00
Mike McCormack db69dcb5c1 Add struct StorageBaseImpl at the start of derived structures instead
of trying to keep the first members the same.
2005-02-24 19:39:27 +00:00
Mike McCormack a6a91a440b Implement and test IPropertySetStorage. 2005-02-21 20:58:09 +00:00
Mike Hearn 4d49d8ca36 Avoid infinite loop when doing a typelib marshalled
IUnknown::QueryInterface by only doing an extra QI if requested IID is
not equal to marshalled IID.
2005-02-21 18:35:07 +00:00
Robert Shearman 4390d003f4 - Better tracing.
- Small cleanup of creation functions.
2005-02-18 20:13:23 +00:00
Robert Shearman 95288f9148 - Move marshaling state machine into stub manager from ifstub.
- Add additional needed states for table-weak marshaling, as shown by
  tests.
- Protect external reference count from underflows/overflows.
2005-02-18 20:03:23 +00:00
Robert Shearman 2d2a39cc42 - Use I_RpcGetBuffer, instead of our own buffer routines to fix an
occasional test crash caused by heap corruption.
- Zero the memory block passed to RpcServerRegisterIfEx so we don't
  pass garbage in some of the fields we don't fill in.
- Return the correct error code from create_server and fix two handle
  leaks.
- TODO update.
2005-02-15 21:48:09 +00:00
Robert Shearman 3b59fa8fce The Global Interface Table should do table-strong marshaling instead
of normal marshaling so that an interface can be retrieved more than
one time.
2005-02-15 15:47:44 +00:00
Robert Shearman 552cc7d5b3 - Remove cruft left over from previous RPC backend implementation in
the apartment structure.
- Don't pass an IPID by value for proxy_manager_create_ifproxy.
- Disable more of RPC_UnregisterInterface to prevent the RPC runtime
  using freed memory.
- Rename various external RPC backend functions so that they all have
  the same "RPC_" prefix.
- Reduce the timeout of the function that connects to a local server
  to 30s, like native.
2005-02-15 15:44:25 +00:00
Robert Shearman db6db7cb4c Make COM use the RPC runtime as the backend for RPC calls. Based on a
patch by Ove Kåven.
2005-02-15 15:02:49 +00:00
Robert Shearman 2ff1711487 Invoke objects in STA's in the correct thread by sending messages to
the hidden apartment window.
2005-02-14 11:50:51 +00:00
Marcus Meissner 30ed10004b Output some more informations.
Mark one global variable static.
2005-02-14 11:07:55 +00:00
Robert Shearman 403d8e23cd Make Ole tests run on Windows 95. 2005-02-14 11:01:51 +00:00
Robert Shearman 999766d31b - Implement CoDisconnectObject.
- Change CoLockObjectExternal so that it does the correct action now
  and eliminate a fair few lines of now redundant code.
- Rename OLE32_Dll{Register,Unregister}Server to
  Dll{Register,Unregister}Server.
2005-02-08 16:51:22 +00:00
Robert Shearman 514af6ce78 Move object-to-stub-manager mapping rule to register_ifstub. 2005-02-08 14:26:19 +00:00
Robert Shearman f8a2edb805 - Split up apartment creation so that the long code paths that don't
need locking no longer have locking.
- Add special cases for the threads that join apartments but can't
  increase the refcount of the apartment.
- Free TLS storage on thread destruction (including releasing the
  apartment the thread is in, if any, and so making another test
  pass).
2005-02-08 13:42:15 +00:00
Alexandre Julliard 2a46702761 Authors: Mike Hearn <mh@codeweavers.com>, Robert Shearman <rob@codeweavers.com>
- Rework RPC dispatch layer to be simpler and not get confused by
  server/client duality.
- Make threads shut down at the right time and not access freed memory
  after apartment destruction.
- Rename stub_dispatch_thread to client_dispatch_thread.
- Add some more tracing
- Check return value of WaitNamedPipe.
- Change named pipe timeouts to 0.5s, which should be enough for even the slowest machines.
2005-02-08 12:55:26 +00:00
Robert Shearman b9aa9e0bdd - Pass the original IID to IMarshal_UnmarshalInterface and query for
the requested interface.
- Unmarshaling IID_NULL means use the IID the interface was originally
  marshaled with.
2005-02-02 19:11:23 +00:00
Robert Shearman e6afc84873 - Add code for destroying the thread-local storage data, but don't use
it yet.
- Don't release apartment on changing modes because we didn't add a
  reference anywhere.
- Quieten the RPC_E_DISCONNECTED error message as it is an expected
  return code.
- Treat IID_NULL the same as IID_IUnknown.
- Make tests compile on Win95 again.
- Fix copy+paste error where the test failure should be from the
  CoUnmarshalInterface function.
2005-02-01 14:18:10 +00:00
Robert Shearman 9a97360eba Remove test that fails on Win98 and is not useful. 2005-01-31 11:29:41 +00:00
Robert Shearman 9dba3479c8 Release the client security objects when no longer needed (reported by
Mike McCormack).
2005-01-28 17:19:51 +00:00
Robert Shearman 9b634b97ae - More tests.
- Change return code of CoGetPSClsid to match test result.
- Do a slight hack to make IRemUnknown proxies be added after the
  proxy that uses them to stop them being used after they are
  destroyed.
- Fix multiple local server connections.
2005-01-28 12:39:13 +00:00
Robert Shearman 41d9aef7ef - Implement CoSetProxyBlanket, CoQueryProxyBlanket and CoCopyProxy.
- Update todo list.
2005-01-28 11:27:46 +00:00
Robert Shearman 5bef770490 Give IUnknown its own ifstub to fix ref-counting and ipid storage
issues.
2005-01-27 10:39:44 +00:00
Robert Shearman 3018974ce3 - Make proxy manager use IMultiQI instead of IInternalUnknown as tests
show that IInternalUnknown isn't exposed.
- Implement IMultiQI on top of IRemUnknown calls.
- Silence some fixmes that occur during tests and don't give us any
  useful information.
- Fix typo in class factory proxy that caused us to use the wrong
  offset into the CFProxy structure, causing us to not call the
  outer_unknown properly.
2005-01-26 21:07:05 +00:00
Robert Shearman cbbf08a7e2 - Use InterlockedIncrement for the ipid counter instead of a critical
section (suggested by Mike Hearn).
- Remove a line added by a bad merge.
- Implement RemUnkStub_Disconnect.
- Remove all of the RPC disconnect code.
2005-01-26 20:53:06 +00:00
Robert Shearman 963ac3f013 - Implement IRemUnknown.
- Use IRemUnknown for life-cycle management instead of the current
  hacks.
2005-01-26 20:42:30 +00:00
Robert Shearman ce5adcda15 - Move OLE automation interface registration to oleaut32.
- Add IRemUnknown to list of interfaces to register.
2005-01-25 19:03:30 +00:00
Robert Shearman 6e042873d5 Proxies/stubs for IRemUnknown methods, based on code written by Ove
Kåven.
2005-01-25 19:02:54 +00:00
Robert Shearman ad34f3dc5e - Generate machine-local IPIDs.
- Make pipes be uniquely identified only by their IPID.
2005-01-25 10:57:24 +00:00
Robert Shearman 6b89a92215 - Add a new flag SORFP_NOLIFETIMEMGMT to tell the proxy manager not to
call any IRemUnknown functions.
- Move the low-level unmarshaling code into a new function,
  unmarshal_object, so that it can be easily reused for unmarshaling
  IRemUnknown.
2005-01-24 11:24:08 +00:00
Mike Hearn 70c1c26869 Various formatting/style changes. 2005-01-21 10:15:29 +00:00
Robert Shearman 717eb8fff4 - Consolidate more stub creation details into register_ifstub.
- Replace the current wine_marshal_id structure with STDOBJREF for the
  on-the-wire format.
2005-01-20 10:35:46 +00:00
Robert Shearman 6a20b2f476 - Initialize ppv pointer in ClientIdentity_QueryInterface to NULL as
apps depend on this.
- Don't release IRpcProxyBuffer on ifproxy destruction - the caller
  will do this for us.
- Make find_proxy_manager add a reference to the proxy manager and
  make proxy_manager_construct return an object with a valid
  ref-count.
- Remove stray not operator to fix a memory leak / crash in
  proxy_manager_destroy.
- More debug messages, especially on errors.
- Fix ref-count leak in the Class Factory proxy.
- Add a test case for IClassFactory_CreateInstance.
2005-01-19 17:00:20 +00:00
Robert Shearman b5a10936bd Initialize clsid member to the marshaler clsid to fix custom
marshaling.
2005-01-17 19:32:25 +00:00
Robert Shearman 4c8d59dd91 Implement table marshaling. 2005-01-17 13:39:40 +00:00
Robert Shearman 5ce396f9bd - Remove obsolete structs, rearrange things to group the structs
together and to group similar functions.
- Document thread-safety of members of structs.
2005-01-14 17:20:27 +00:00
Robert Shearman ca608933dd Make proxy shutdown test succeed by releasing the channel on
disconnect.
2005-01-14 17:20:13 +00:00
Robert Shearman 0e18914481 - Add documentation for most Co* functions.
- Move several functions into different files to group them with
  similar functions.
2005-01-14 17:05:36 +00:00
Robert Shearman 6036a773e2 - The apartment reference should be held while the stub manager
reference is held.
- Fix same apartment-unmarshal detection.
2005-01-14 16:48:34 +00:00
Robert Shearman ead057c4b7 - Don't use the pipe caching code because it doesn't work correctly at
the moment.
- Always write disconnect reply packet, even in failure cases.
2005-01-14 15:59:01 +00:00
Robert Shearman a84e7d7b75 Destroy stubs on apartment shutdown. 2005-01-14 15:11:55 +00:00
Mike Hearn ba0475e738 Force context switch on chanbuf disconnect to avoid a race in the test
suite.
2005-01-14 15:11:24 +00:00
Christian Costa a010e3b3fa CoInitialize(Ex) should return S_FALSE when COM is already initialized
for the current thread.
2005-01-12 19:58:09 +00:00
Robert Shearman 452491bd03 - Document CoSetState & CoGetState.
- Rewrite them to only retrieve TLS info once.
- Remove trailing whitespace in COM_CurrentInfo.
2005-01-12 19:48:39 +00:00
Robert Shearman 2891bc53ba Remove wine_marshal_data: it is unneeded and there is no equivalent in
STDOBJREF.
2005-01-12 19:48:20 +00:00
Robert Shearman de95de1865 - Force creation of thread queue to stop PostThreadMessage from
failing.
- Remove incorrect comment.
2005-01-12 19:28:37 +00:00
Robert Shearman 89f5c8241f The way apartments are used has changed, so fix up the hacks in the
RPC code that haven't yet been updated.
2005-01-12 19:27:22 +00:00
Robert Shearman 36f482cb7d - Make MTA dynamically allocated so that proxies and other resources
are freed at the proper time.
- Changed/removed some incorrect comments regarding apartments.
2005-01-12 19:27:04 +00:00
Bill Medland 9c6de52bb2 Corrected testing for multithreaded (based upon observations by Paul
Vriens, Christian Costa and Robert Shearman).
Added TRACE for investigating OXID errors.
2005-01-11 15:45:03 +00:00
Mike McCormack 71424b80e5 Tests and fixes for StgOpenStorage. 2005-01-11 15:08:08 +00:00
Robert Shearman 68fc5f8890 Add tests for trying to unmarshal from a bad stream and for testing
what interfaces the proxy exposes.
2005-01-11 10:45:52 +00:00
Robert Shearman c353f85082 - Document how thread-safety is ensured for each member of the
stub_manager and ifstub structs.
- Make stub_manager ref counted to ensure it doesn't get freed whilst
  it is still being used.
- ifstubs are now freed only when the controlling stub_manager is freed.
- Rename stub_manager_ref/unref to stub_manager_ext_addref/release
  respectively and make then take an unsigned long to prevent
  malicious callers from passing in a negative value and corrupting
  the ref count.
2005-01-11 10:45:34 +00:00
Mike McCormack 6f20133705 Test and fix a few problems with OLE storage streams. 2005-01-11 10:44:28 +00:00
Mike McCormack b146b75c27 Test and fix StgCreateDocFile grfModes. 2005-01-10 12:26:25 +00:00
Paul Vriens 202b340a51 - use Interlocked* functions in AddRef and Release.
- store the result of the Interlocked functions and use only this.
2005-01-09 17:29:21 +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
Robert Shearman 86d63bbbac Rename iid in wine_marshal_id to ipid and use IPIDs instead of IIDs in
the stub manager.
2005-01-07 15:33:41 +00:00
Robert Shearman 090003360f The current architecture cannot handle pipes changing address, so use
a static array. Fixes memory corruption that sometimes occurs when
using multiple pipes.
2005-01-07 15:33:26 +00:00
Robert Shearman b2edf2f03c No need to add a reference to the apartment from new_stub_manager as
we don't hold on to an apartment pointer.
2005-01-06 20:43:48 +00:00
Robert Shearman 23e390a223 - Make struct oletls ref counted so that it is only detached from the
apartment on the final CoUninitialize.
- Decrease the size of the crit sec on destroying an apartment - it is
  only needed for touching the apartment list.
- Small cleanups.
2005-01-06 19:39:07 +00:00
Robert Shearman 67bae9f213 ConnectNamedPipe returning ERROR_PIPE_CONNECTED is not an error. 2005-01-06 19:38:48 +00:00
Robert Shearman b5e4d1a8d8 The channel buffer can be NULL if the proxy is disconnected, so check
for this before releasing it.
2005-01-05 17:30:20 +00:00
Robert Shearman 9f426df0a8 - Fix race on apartment creation.
- Display errors in decimal to make searching for the meaning in
  winerror.h easier.
2005-01-05 17:30:04 +00:00
Mike Hearn a6a416cb4e - Make apartment access thread-safe by introducing refcounting and
wider usage of the apartment lock.
- Rework OLE TLS management to eliminate uninitialised apartments and
  parent chaining.
2005-01-05 17:14:33 +00:00
Mike McCormack a246306870 Allow COM to start services containing COM servers. 2005-01-05 13:22:10 +00:00
Robert Shearman 85763a1711 - Add tracing for proxy ref count functions.
- Release the channel on proxy destruction.
2005-01-04 20:33:02 +00:00
Mike Hearn 73318dab8f Add a DCOM todo list. 2005-01-04 20:32:47 +00:00
Robert Shearman 2835633789 Implement proxy manager. 2005-01-04 11:58:23 +00:00
Robert Shearman dee74a6ec9 Make the ClassFactory proxy support aggregation. 2005-01-04 11:47:52 +00:00
Michael Stefaniuc 15a308a9d7 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2005-01-03 14:56:42 +00:00
Mike Hearn 054f9ecc3c Comment out an assert, as we don't yet implement IRemUnknown. 2005-01-03 14:34:09 +00:00
Robert Shearman 5d7d188df5 - Move named pipe macros into rpc.c.
- Remove unneeded function.
2004-12-27 19:27:57 +00:00
Robert Shearman 2b747d4e50 Implement COM local servers using table marshaling to avoid doing the
marshaling in a child thread where COM has not been initialized.
2004-12-27 19:24:55 +00:00
Mike Hearn 5475a2e617 - Implement the COM stub manager, refactor the current stub code.
- Begin implementing interface stubs.
2004-12-27 19:21:47 +00:00
Mike Hearn 737e67b17b Propagate apartments through the intermediate threads, make listener
thread apartment scoped.
2004-12-27 16:59:28 +00:00
Michael Stefaniuc 5ad7d858e0 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2004-12-23 17:06:43 +00:00
Eric Pouech bcfa5b0900 ReadFile and WriteFile must be passed a parameter for the number of
handled bytes when no overlapped operation is done.
2004-12-22 18:38:31 +00:00
Robert Shearman 827154e451 Add tests for moniker and marshaling functions. 2004-12-21 14:51:27 +00:00
Francois Gouget 6fb1a20020 Assorted spelling fixes. 2004-12-20 19:27:06 +00:00
Ge van Geldorp b4bb1c931c Allocate correct amount of memory. 2004-12-16 14:23:16 +00:00
Robert Shearman 9fdd91fdc4 - Add documentation to several functions.
- Coding style changes according to the style Mike and I have agreed
  upon for COM related files.
2004-12-14 15:31:05 +00:00
Robert Shearman 2fa9a0a6fd Remove unneeded includes and the unused COMPOBJ_hInstance32 variable. 2004-12-14 15:28:58 +00:00
Robert Shearman 40b4f7f6e6 Use OBJREF on the wire for generic marshaling functions. 2004-12-14 15:14:40 +00:00
Robert Shearman 398a595377 Fixed incorrect unsigned test. 2004-12-14 11:35:12 +00:00
Eric Pouech 4056d7ef8c Fixed some errors in function prototypes. 2004-12-13 21:19:01 +00:00
Alexandre Julliard ebe3c529b1 Janitorial: C booleans must not be compared against TRUE. 2004-12-09 14:07:59 +00:00
Robert Shearman 2c3de6db24 - Make the wine_marshal_id structure more like the DCOM OBJREF
structure, by replacing the process id field by apartment id (OXID),
  changing the users of the process id field to use the new field and
  renaming the objectid field to oid.
- Fix StdMarshalImpl_UnmarshalInterface to invalidate and release its
  stub when doing a same apartment marshal.
2004-12-08 17:49:30 +00:00
Mike Hearn 36aee71988 Rename the STUBMGR thread to more accurately reflect its purpose. 2004-12-07 17:01:40 +00:00
Robert Shearman cba8763c33 Remove unnecessary WNDPROC casts. 2004-12-06 11:51:29 +00:00
Robert Shearman 3b0a5d0a06 - Add some function declarations to objbase.h.
- Add stubs for server ref counting.
- Implement HRESULT marshaling.
2004-12-01 15:33:34 +00:00
Eric Pouech 0a258964c2 Const correctness fixes. 2004-11-30 21:38:57 +00:00
Mike Hearn b547af156b Trace the OLE error info strings. 2004-11-29 17:00:39 +00:00
Mike Hearn a153efc5bb - Improve OLE function documentation.
- Bail out with CO_E_NOTINITIALIZED when apt is null.
2004-11-29 17:00:15 +00:00
Robert Shearman aa758eaf82 Implement OleDuplicateData. 2004-11-24 18:12:06 +00:00
Alexandre Julliard 405568801e Removed a couple of no longer needed entries. 2004-11-19 18:28:05 +00:00
Ge van Geldorp b3f2c53155 Use only one .res file. 2004-10-27 00:47:53 +00:00
Dmitry Timoshkov c41d0c9a4b - Remove bogus use of nStatCounter and hOleAut32 in CoSetState.
- Remove a comment about protecting per thread data by a critical section.
2004-10-25 21:48:44 +00:00
Francois Gouget 3bb5b093e8 Assorted spelling fixes. 2004-10-22 22:27:51 +00:00
Vincent Béron 4eeae1adb3 Fix some types problems. 2004-10-18 22:39:21 +00:00
Robert Shearman 0fb8f4a15e Improve proxy destruction comment. 2004-10-18 19:34:51 +00:00
Francois Gouget 486d020c1b Don't define COBJMACROS in objbase.h.
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Francois Gouget 67aa858a31 Assorted spelling fixes. 2004-10-05 18:15:29 +00:00
Alexandre Julliard 739e5b06da Avoid depending on the non-standard IUnknown_METHODS macro in Wine
internal headers.
2004-10-05 04:16:21 +00:00
Joris Huizer 34cffce6f9 Ref count increment/decrement cleanup. 2004-09-24 01:16:53 +00:00
Hans Leidekker 719a789792 Fix signed/unsigned comparison warnings. 2004-09-22 02:46:38 +00:00
Alexandre Julliard 0af18186b2 Ignore the generated header files. 2004-09-21 01:05:14 +00:00
Alexandre Julliard 47461203c4 Build the .h files from their idl source at compile time, and remove
them from CVS.
2004-09-21 00:35:02 +00:00
Alexandre Julliard 233766aafa Build idl files as part of the normal build process. 2004-09-20 21:48:42 +00:00
Mike McCormack 37dcaf6be6 CoSuspendClassObjects stub implementation. 2004-09-20 21:44:34 +00:00
Alexandre Julliard 241a4c34b1 Get rid of the non-standard ICOM_THIS macro. 2004-09-09 21:03:58 +00:00
Francois Gouget 83755cca97 Move the PROPVARIANT declaration from objidl.idl to propidl.idl.
Move related API declarations from individual C files to propidl.idl.
Remove uneeded include of propidl.h in the propvariant.c test.
2004-09-09 19:23:19 +00:00
Francois Gouget 9ecc71213f The union in PROPVARIANT is always nameless on Windows. So define a
macro to deal with it correctly.
2004-09-08 19:05:55 +00:00
Mike McCormack d324ccfce7 Fix some warnings found with -Wsign-compare. 2004-09-07 20:25:52 +00:00
Robert Shearman 6e92fca9b3 - Fix PropVariantCopy for VT_LPSTR and VT_LPWSTR.
- Test case VT_BSTR, VT_LPSTR and VT_LPWSTR.
2004-09-06 21:28:28 +00:00
Alexandre Julliard 39a696a166 Removed some uses of the non-standard ICOM_THIS macro. 2004-09-06 20:34:29 +00:00
Robert Shearman 77994cce4e - Fix PropVariantClear to reject invalid types.
- Don't crash on NULL pointers.
- Add test case.
2004-09-03 01:04:38 +00:00
Francois Gouget 6825ed811d Added missing trailing '\n's to ok() calls. 2004-09-02 20:09:37 +00:00
Alexandre Julliard 03250ff6e7 Inline functions don't need WINE_UNUSED. 2004-09-01 04:55:52 +00:00
Alexandre Julliard f714b39762 Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
macro.
2004-08-23 19:39:48 +00:00
Alexandre Julliard 20486e1c59 Get rid of the ICOM_MSVTABLE_COMPAT support, g++ no longer requires
this.
2004-08-23 18:10:02 +00:00
Alexandre Julliard 07a805127a Added recursive idl target to allow updating idl files private to a
dll.
2004-08-22 22:33:57 +00:00
Alexandre Julliard 25e2a320a7 Don't define BEGIN_INTERFACE in unknwn.h. 2004-08-22 21:38:46 +00:00
Alexandre Julliard 936198ce45 Moved ICOM_THIS_MULTI definition out of objbase.h and into the files
that use it.
2004-08-13 00:44:22 +00:00
Alexandre Julliard 48c4bb3c31 Get rid of the non-standard ICOM_VTABLE macro. 2004-08-12 23:00:51 +00:00
Alexandre Julliard 0467ce9fd7 Get rid of the non-standard ICOM_VFIELD macro. 2004-08-12 19:52:49 +00:00
Alexandre Julliard 616940eb9a Get rid of the non-standard ICOM_DEFINE macro. 2004-08-12 03:33:30 +00:00
Alexandre Julliard b459952144 Avoid some non-portable makefile constructs, and get rid of the
ALTNAMES variable.
2004-08-11 23:59:06 +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 McCormack 06b8046f20 Added a test for stat'ing a memory based storage file. 2004-08-11 00:17:52 +00:00
Mike McCormack f0baf82b36 stat on memory storage should return a NULL name, not "". 2004-08-10 23:41:58 +00:00
Robert Shearman 5c7c5fafb6 - Add static to non-exported marshal functions.
- Remove unused marshal functions.
- Rename several RPC functions.
2004-08-02 18:47:31 +00:00
Mike Hearn 819942339f Disconnect proxies at COM shutdown to release the corresponding
stubs.
2004-08-02 18:28:29 +00:00
Mike Hearn ce335adddd Don't marshal IClassFactory into the local server pipe until we have
connected, otherwise we might end up with stubs that are never used.
2004-07-30 18:44:09 +00:00
Alexandre Julliard 6cd1a7d9a9 Authors: Robert Shearman <rob@codeweavers.com>, Mike Hearn <mh@codeweavers.com>
Fix infinite loops by checking the return value of _invoke_onereq and
bailing appropriately.
2004-07-30 18:43:07 +00:00
Jeroen Janssen cead7c0e81 Updated some MSDN links in the code. 2004-07-30 00:03:02 +00:00
Robert Shearman 11fc5874df Emit fixme for known local wrong behaviour. 2004-07-30 00:02:17 +00:00
Mike Hearn 5169f3c5d2 Implement disconnect for proxies so that stubs are properly
destroyed.
2004-07-29 23:58:12 +00:00
Robert Shearman 37cc006083 Document wrong behaviour for IRunningObjectTable. 2004-07-29 02:44:09 +00:00
Mike Hearn e59aa5d6a4 Fix ref counting in StdMarshalImpl_MarshalInterface for case where the
stub already exists.
2004-07-29 02:43:59 +00:00
Robert Shearman 0cac6c83a7 Fix some inaccuracies in a comment and reformat. 2004-07-29 02:43:48 +00:00
Alexandre Julliard 26541a00c9 Authors: Mike Hearn <mh@codeweavers.com>, Robert Shearman <rob@codeweavers.com>
Add a comment on the SendReceive behaviour. Improve two others.
2004-07-29 02:43:36 +00:00
Francois Gouget f8e01efb3d Assorted spelling fixes. 2004-07-23 23:02:09 +00:00
Robert Shearman f5ed953c10 Set RPC data representation. 2004-07-23 22:58:13 +00:00
Mike Hearn 1cc05ff148 Pass -Embedding switch to EXE servers, more tracing. 2004-07-23 19:10:13 +00:00
Robert Shearman 2e93adc5c7 - Remove unneeded STUBMGR_Start call.
- Cleanup compobj_private.h.
2004-07-22 23:44:54 +00:00
Alexandre Julliard bffe98c7dd Authors: Mike Hearn <mh@codeweavers.com>, Rob Shearman <rob@codeweavers.com>
Implement StdMarshal::ReleaseMarshalData.
2004-07-22 20:34:14 +00:00
Mike Hearn 602cce0ebf Unref stub after invoking on it. 2004-07-22 19:43:27 +00:00
Mike Hearn c019b89d5f Fix misleading warning ole CoGetClassObject. 2004-07-21 19:37:07 +00:00
Mike McCormack e42d8aef24 Fix a few serious race conditions in the OLE object pipe server. 2004-07-15 22:07:44 +00:00
Marcus Meissner ada760f0a6 IID_IObjectWithSite is already in libuuid, no need to declare here. 2004-07-12 19:50:14 +00:00
Marcus Meissner 0c02ab3106 IMalloc vtables are static. 2004-07-12 19:50:03 +00:00
Francois Gouget ca942f1625 Assorted spelling fixes. 2004-07-08 20:16:23 +00:00
Mike Hearn 17ad9fdd43 Add some explanations to compobj.c, implement flushing message queue
on shutdown.
2004-07-06 21:27:48 +00:00
Aric Stewart 665c4880f7 Return an error in CoMarshalInterface if the IUnknown pointer is NULL
and don't crash.
2004-06-30 18:14:00 +00:00
Ivan Leo Puoti 5729abea73 Removed the winedefault.reg message. 2004-06-17 19:55:24 +00:00
Robert Shearman bc06d4ba8e - Fix ref count on standard proxy creation.
- Release channel buffer in StdMarshal_UnmarshalInterface, since we no
  longer use it and the proxy should have taken a reference on it.
- Add a few comments.
2004-06-14 17:58:03 +00:00
Robert Shearman 3270bb1ee1 Fixed CoMarshalInterThreadInterfaceInStream and
CoGetInterfaceAndReleaseStream.
2004-05-29 00:22:55 +00:00
Marcus Meissner e3a37c8a26 Revert broken strict aliasing fix. 2004-05-21 20:52:57 +00:00
Patrik Stridvall 070db4e5de Fixed some issues found by winapi_check. 2004-05-17 21:08:31 +00:00
Francois Gouget cfc3943c5f Make our ascii strings static const.
Remove a couple string variables that were used only once and use the
string literal directly.
2004-05-04 04:13:05 +00:00
Marcus Meissner ff39b877a4 Fixed strict aliasing issues in dlls/ole32. 2004-05-04 03:10:50 +00:00
Marcus Meissner aff2e2e5e6 Implemented CoReleaseMarshalData. 2004-05-02 04:20:37 +00:00
Marcus Meissner aedfc471a2 Fixed lvalue casts. 2004-04-30 18:32:36 +00:00
Francois Gouget 7a58c6ec53 Add a stub for StgCreateStorageEx(). Returns
STG_E_UNIMPLEMENTEDFUNCTION as per MSDN. Fixes an error saving files
in Word XP.
2004-04-30 18:32:20 +00:00
Francois Gouget 8fc374d8b4 Make Unicode strings 'static const'. 2004-04-20 02:14:00 +00:00
Francois Gouget 52c0832161 Make Unicode strings static const. 2004-04-20 01:12:17 +00:00
Filip Navara f379a1dccf Get rid of E_UNSPEC non-standard error value. 2004-04-12 22:02:37 +00:00
Jon Griffiths 49b3982255 RegisterDragDrop: fail on NULL drop target. 2004-03-30 05:13:58 +00:00
Warren Turkal e910efbcbe Fixed the implementation of CoTreatAsClass. 2004-03-29 21:41:33 +00:00
Alexandre Julliard 9e4ed6460c .spec.c files are no longer used for 32-bit dlls. 2004-03-24 03:36:44 +00:00
Francois Gouget b948778660 Assorted spelling fixes. 2004-03-23 23:20:16 +00:00
Alexandre Julliard 0d203bd7ee Sync some of the dll registrations with the contents of
winedefault.reg.
2004-02-27 06:08:32 +00:00
Patrik Stridvall ede82e3055 Fixed some issues found by winapi_check. 2004-02-20 20:19:23 +00:00
Mike Hearn ca8901640e To reduce debugging noise, make IMalloc32/IMallocSpy implementations
output to the new olemalloc debug channel.
2004-02-19 01:26:45 +00:00
Robert Shearman 2eee76703d - CoSetState info should be thread local.
- SetErrorInfo should allocate an apartment when no apartment present.
2004-02-10 01:36:20 +00:00
Troy Rollo 0a4050d33f Added documentation for DocFiles, based on the CorVu implementation of
DocFiles.
2004-02-07 01:27:51 +00:00
Ge van Geldorp e393195e8c Don't depend on user32-internal implementation of accelerator tables. 2004-01-28 20:06:35 +00:00
Alexandre Julliard 20b4585e3c Only link against libdxguid where necessary. 2004-01-27 00:11:16 +00:00
Alexandre Julliard d07c1004e3 Moved a few remaining 16-bit definitions out of the standard headers. 2004-01-23 22:51:41 +00:00
Ge van Geldorp 100e11309b Fix various function prototypes to conform to PSDK. 2004-01-23 20:57:26 +00:00
Ge van Geldorp 399901e054 Rename LARGE_INTEGER and ULARGE_INTEGER members "s" to "u" to conform
with PSDK.
2004-01-23 01:51:33 +00:00
Ge van Geldorp 1d0598b0aa Swap arguments of LocalAlloc and only update Malloc32 block on
successful allocation.
2004-01-19 23:42:34 +00:00
Mike McCormack 2cee7ac6d9 Don't use CreateFileMapping on a zero length file. 2004-01-19 21:44:02 +00:00
Francois Gouget 17112eaa4d Assorted spelling fixes. 2004-01-16 21:26:08 +00:00
Huw Davies 49906feb23 Trace the high part of the Seek offset. 2004-01-16 21:22:41 +00:00
Francois Gouget 640cc3f3e1 Assorted spelling fixes. 2004-01-06 22:08:33 +00:00
Robert Shearman 8aef340cbd - Fix IMemAlloc_Free when IMemAlloc_Alloc hasn't yet been called and
debugging is on.
- Fix OleMetafilePictFromIconAndLabel (fixes attachments in Outlook2k).
- Implement OleTranslateAccelerator.
- Move OleCreate and a load of PropVariant functions out of stubs file.
- Change OleCreate to a semi-stub.
2003-12-08 22:46:08 +00:00
Dimitrie O. Paun 3e54350dc2 {Global,Local}ReAlloc() does not allocate memory. 2003-11-26 05:04:15 +00:00
Dimitrie O. Paun a1cee57ce9 Fix mem leak when GlobalReAlloc() fails. 2003-11-26 03:36:18 +00:00
Dimitrie O. Paun d8aa853596 Fix the IMalloc::ReAlloc() to follow the documented behavior. 2003-11-26 03:34:51 +00:00
Alexandre Julliard d004059538 Moved the 16-bit storage interfaces out of the exported headers. 2003-10-14 20:23:01 +00:00
Oleg Prokhorov de12a97041 Another portion of HeapReAlloc fixes. 2003-10-14 05:24:20 +00:00
Dimitrie O. Paun fbdfd910c1 Remove SYMBOLFILE and LDDLLFLAGS from Makefiles. 2003-10-11 01:09:15 +00:00
Alexandre Julliard 593dec5d66 Authors: Warren Baird <warren.baird@cimmetry.com>, Dave Belanger <dave.belanger@cimmetry.com>
Moved code out of assert statements so you can safely compile with
-DNDEBUG.
2003-10-08 19:08:23 +00:00
Daniel Marmier 0348649853 Fixed warnings with gcc option "-Wwrite-strings". 2003-10-06 21:03:32 +00:00
Dimitrie O. Paun 54e6b0d938 Extract binary resources to files, to fit the standard. 2003-10-03 05:01:33 +00:00
Michael Stefaniuc 082e0bfe93 Fix missing mem freeing on error path. 2003-10-01 03:14:29 +00:00
Michael Stefaniuc ab64e3f095 Fixes for memory leaks on error path.
One fix for use of previous released pointer.
2003-09-30 00:24:08 +00:00
Dimitrie O. Paun 8b255842ec Remove the obsolete pascal16 (replaced by pascal -ret16). 2003-09-26 04:32:19 +00:00
Mike McCormack ac57fc20b6 Change erroneous malloc to HeapAlloc. 2003-09-22 19:46:13 +00:00
Dave Miller 47fb938d54 Removed ordinals from comments. 2003-09-11 03:06:25 +00:00
Dave Miller 13e05147bc Remove all the ordinals and use @ instead. 2003-09-11 03:05:00 +00:00
Alexandre Julliard 20c169e0a4 Fixed a few more headers dependency issues. 2003-09-09 19:39:31 +00:00
Francois Gouget ae50013017 Fix the case of product and company names. 2003-09-08 19:38:45 +00:00
Alexandre Julliard d6bffb2c45 Regenerated with the latest widl. 2003-09-06 02:25:53 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Alexandre Julliard 802ebc1168 Converted oleidl.h to IDL. 2003-09-03 20:17:39 +00:00
Rolf Kalbermatter 919bd7855f Make sure the passed in object pointer is only addrefed on success. 2003-08-29 22:10:01 +00:00
Alexandre Julliard 7df1b9e03a Start using the exported TEB structure from winternl.h where
possible.
2003-08-28 19:57:35 +00:00
Alexandre Julliard 02f2813968 Renamed a few TEB fields to use the "official" names. 2003-08-27 23:14:29 +00:00
Mike Hearn 266e19ebc0 In the global interface table:
- Print warnings when things go wrong.
- Alter the way we do refcounting.
- Don't release the stream on retrieval, just rewind it instead.
- Implement thread safety.
2003-08-23 00:45:49 +00:00
Jon Griffiths ad86c25a8a Remove redundant wine specific #include. 2003-08-18 19:48:38 +00:00
Alexandre Julliard 19b6a49845 Allocate DebugInfo field for all critical sections (based on a patch
by Alex Pasadyn).
Get rid of the Wine-specific CRITICAL_SECTION_INIT macro.
2003-08-12 23:50:54 +00:00
Patrik Stridvall ba78aac406 Fixed some issues found by winapi_check. 2003-08-08 21:07:23 +00:00
Alexandre Julliard 20698b22df Make the DllRegisterServer, DllRegisterServerEx, DllUnregisterServer,
DllGetClassObject and DllCanUnloadNow functions private (suggested by
Jon Griffiths).
2003-07-30 03:48:55 +00:00
Mike Hearn 6a8ac17c64 - GIT should not dereference ppv when unmarshalling interface.
- Correctly eliminate refcounting in the GIT.
- Add warning when given riid does not match.
2003-07-22 01:01:25 +00:00
Mike Hearn cb7db104dd IMallocSpy cannot cause an allocation failure when cb == 0. 2003-07-22 01:01:06 +00:00
Mike McCormack 97ac282fa7 Created stub for CreateClassMoniker. 2003-07-18 22:59:58 +00:00
Jon Griffiths 839131f600 Remove FIXMEs and prototypes for now-implemented functions. 2003-07-18 22:54:01 +00:00
Steven Edwards 32d27dc77b - Create new file ole2_16.c for ole2 16bit only functions.
- Move CLSIDFromProgID16 so it can be used internally.
- Compile out more Win16 sources.
2003-07-09 19:49:12 +00:00
Francois Gouget 56aaea2f43 Spelling fixes. 2003-07-09 02:52:57 +00:00
Francois Gouget 14a5d168e9 Fixed some common spelling errors. 2003-07-02 04:37:26 +00:00
Dmitry Timoshkov 4e1ef0c114 For all DLLs with defined DllMain and which do not require
DLL_THREAD_ATTACH/DLL_THREAD_DETACH notifications, call
DisableThreadLibraryCalls() in order to slightly improve performance
on thread creation/exiting.
2003-06-30 20:53:48 +00:00
Troy Rollo 72659c998f Implemented OleDraw. 2003-06-27 04:03:40 +00:00
Francois Gouget 9591836ffb 'sizeof type' is best avoided as it won't always compile (e.g. 'int
main() {return sizeof int;}'). Use 'sizeof(type)' instead.
2003-06-18 19:45:22 +00:00
Francois Gouget c5f775a9c7 Typos/spelling fixes. 2003-06-18 03:30:39 +00:00
Mike Hearn 739ccae798 Implement a class factory for the Global Interface Table. 2003-06-17 03:57:18 +00:00
Ove Kaaven ef57c4d905 Preliminary support for COM apartments. 2003-06-04 20:11:34 +00:00
Ove Kaaven 95f7c6c8d9 DCOM IDL file based on the DCOM specification. 2003-05-22 03:36:26 +00:00
Mike McCormack 1048ebb37e Semi-correct implementation of OleMetafilePictFromIconAndLabel. 2003-05-19 18:50:36 +00:00
Steven Edwards 6c5e872240 Separate Win16 and Win32 implementations in memlockbytes. 2003-05-15 22:55:37 +00:00
Mike McCormack cf983e9a7f Added stub for OleDoAutoConvert. 2003-05-13 22:14:30 +00:00
Francois Gouget f803e2a92d Fix miscellaneous spelling errors and typos. 2003-05-13 00:41:57 +00:00
Robert Shearman 98747abd75 - Implement a few more cases in PropVariantClear.
- Partially implement PropVariantCopy.
- Implement FreePropVariantArray.
2003-05-13 00:32:43 +00:00
Mike McCormack 936d1059e2 Implemented WriteFmtUserTypeStg and ReadFmtUserTypeStg. 2003-05-11 02:40:29 +00:00
Andreas Mohr 51c38cc729 Fix blatantly wrong SetFilePointer() calls. 2003-04-14 21:33:49 +00:00
Alexandre Julliard 2d5519f15c The com_interface attribute is not needed on derived classes.
Removed the ICOM_CTHIS* macros.
2003-04-12 00:09:14 +00:00
Alexandre Julliard aae3cb61cd Simplified COM interface declarations, removing the need to define
both an xxx_METHODS and an xxx_IMETHODS macro.
2003-04-11 00:31:02 +00:00
Alexandre Julliard c2ebe1ff93 Removed uses of the non standard ICOM_VTBL macro. 2003-04-10 18:17:34 +00:00
Alexandre Julliard f00c46f030 Use a more compatible technique to declare COM interfaces methods,
using Microsoft's STDMETHOD macros instead of the Wine-specific
ICOM_METHOD ones.
2003-04-10 00:19:24 +00:00
Alberto Massari fc47be5735 - The bindcontext object was leaking strings.
- Removed unused variable.
2003-04-05 05:10:37 +00:00
John K. Hohm bbc25aaa11 Implement DllRegisterServer and DllUnregisterServer for ole32.dll, and
add OleSelfRegister version string.
2003-03-28 19:33:04 +00:00
Alexandre Julliard e048adab83 List 16-bit spec files explicitly to avoid problems with some versions
of make.
2003-03-23 20:00:02 +00:00
Alexandre Julliard 114a31a2a8 Take advantage of new winebuild syntax to remove redundant function
names in spec files.
2003-03-20 03:53:12 +00:00
Mike Hearn f181303246 Fixed copyright date. 2003-03-20 01:31:16 +00:00
Alexandre Julliard a9c51cb60b Replaced forwards by normal function declarations. 2003-03-17 00:17:00 +00:00
Mike Hearn cb816d2c3f Implemented the global interface table object using a simple linked
list.
2003-03-11 01:45:38 +00:00
Dan Kegel 743af54541 Roll loop back up to avoid code duplication. 2003-02-14 23:30:50 +00:00
Michael Stefaniuc 3dcd451bf6 Remove dead code after return or properly comment it out. 2003-02-12 01:23:17 +00:00
Juergen Schmied 34f89b23c6 Fix DoDragDrop in case of child windows. 2003-01-28 01:06:20 +00:00
Gerald Pfeifer 9e40570812 Avoid compiler warning in STORAGE_get_free_pps_entry(). 2003-01-28 00:24:23 +00:00
Francois Gouget 9b0b1e078a Remove (POINTER)NULL casts. 2003-01-14 23:43:41 +00:00
Alberto Massari 04ee55e994 - Align the cleanup phase of ReleaseStgMedium to the native API.
- When the data is a bitmap or an enhanced metafile, use the correct
  data member.
2003-01-14 19:32:14 +00:00
Robert Shearman 37d9b486f9 Support a few trivial cases in PropVariantClear. 2003-01-13 20:37:39 +00:00
Marcus Meissner 27627d977e Implemented CoGetTreatAsClass. 2003-01-11 20:58:10 +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
Dimitrie O. Paun f53ddb2618 Stubs for DllGetClassObject, Ole[GS]etClipboard in ole2. 2003-01-07 19:42:43 +00:00
Marcus Meissner 274e72672b ole2nls.c is a 16bit only.
No need to define ICOM macros for 16bit iface IMalloc16.
Define and implement HGLOBAL_LockBytes16.
Started on StgOpenStorageOnILockBytes.
2003-01-05 01:04:34 +00:00
Dimitrie O. Paun cef5961d2b Eliminate lots of __WINE__ conditionals from the headers. 2003-01-03 19:12:55 +00:00
Alberto Massari bb7e49a4e2 IBindCtx::RegisterObjectParam is supposed to replace the old value if
the key is already registered.
2003-01-02 17:51:34 +00:00
Alexandre Julliard d2c034a8dc Removed some remaining references to wine/obj_base.h. 2002-12-23 01:39:35 +00:00
Alexandre Julliard 87fa2d586d Fixed a few problems caused by the new objidl.idl. 2002-12-19 22:16:35 +00:00
Ove Kaaven a93a5e9ce0 Moved some definitions from include/wine/obj_moniker.h to
dlls/ole32/moniker.h.
2002-12-19 01:09:40 +00:00
Ove Kaaven dcb9240a92 Removed a few more inclusions of deprecated wine/obj_*.h headers. 2002-12-18 20:48:05 +00:00
Alexandre Julliard dbf8b78acd Added .spec.def files. 2002-12-12 22:04:04 +00:00
Robert Shearman 26781acb87 Implemented BindMoniker function. 2002-12-12 02:17:39 +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
Francois Gouget d2667a4ce3 Removed unnecessary HANDLE typecasts. 2002-12-02 18:10:57 +00:00
Alexandre Julliard 8710a79d54 Compile ole32 with -DSTRICT. 2002-11-22 04:43:02 +00:00
Ryan Cumming 42867265ca - Move StgIsStorageFile16's implementation to StgIsStorageFile; port
it to Win32.
- Move StgIsStorageFile from storage.c to storage32.c.
- StgIsStorageFile only returns S_OK, STG_E_FILENOTFOUND, and S_FALSE.
- StgIsStorageFile doesn't check if a file is large enough to be a
  storage file, it only checks for the presence of the 8-byte magic.
2002-11-18 19:43:58 +00:00
Alberto Massari 544efc84f1 Implemented body of HGLOBALStreamImpl::Clone. 2002-11-12 02:13:49 +00:00
Alexandre Julliard 1e1313d54c Made the dll entry point default to DllMain and removed most of the
'init' spec file declarations.
2002-11-04 23:53:41 +00:00
Marcus Meissner 8712174c0d Handle errors in std marshaller better, do not crash.
Added another error message if some program tries to marshal
IOleObject.
OleCreate() should be able to use Local Servers too (it can't as of
now, just for debugging).
2002-11-04 22:38:26 +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
Alexandre Julliard 9a8de13d77 Split out some 16-bit GDI code. 2002-10-18 04:06:47 +00:00
Alexandre Julliard 0ca051e555 Fixed wownt32.h to make it usable from inside Wine, and use it to
avoid some duplication of the handle conversion macros.
2002-10-17 16:43:42 +00:00
Michael Stefaniuc bc54d78532 - change the internal functions in windows/cursoricon.c to use 32bit
handles
- move the implementation of ExtractAssociatedIcon16 to
  ExtractAssociatedIconA
- convert HICON to a void*
- fixed some handle conversions that happened to be in the way while
  doing the above
2002-10-10 21:22:09 +00:00
Alexandre Julliard 1668870f38 Fixed warnings caused by new winternl.h. 2002-09-12 22:28:01 +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
Michael Stefaniuc 4a75c5c6ea Convert HACCEL to a void*. 2002-08-28 00:39:39 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00
Patrik Stridvall d97f7cdecb Fixed some issues found by winapi_check. 2002-08-17 00:21:53 +00:00
Huw D M Davies 9a8fc06357 DWORD at offset 0x40 in the header is the number of big blocks in the
small block depot chain.
Better failure handling.
2002-08-16 19:55:14 +00:00
Dmitry Timoshkov 472a5e52eb Fixed GetClassFile implementation. 2002-08-16 01:39:12 +00:00
Patrik Stridvall 4325554aef Fixed some issues found by winapi_check. 2002-08-09 01:07:29 +00:00
Gregg Mattinson 8c9bdcc9e1 Fixes for Sparc build. 2002-08-07 01:18:41 +00:00
Juergen Schmied d1c144148c - Moved 16 bit functions to a seperate file.
- First implementation for free threaded marshaller.
- Fixed handling of REG_EXPAND_STRING registry values in CoCreateObject.
- Fixed CoLoad/FreeLibrary functions.
- Fixed use internal dll-list (used only for functions loading a dll
  internally without returning HMODULE).
2002-08-03 00:17:10 +00:00
Juergen Schmied c1f9d386eb - Implemented IMallocSpy hooks in IMalloc.
- Moved memory related functions into ifs.c.
- Implemented stubs for the MallocSpy.
2002-07-29 23:30:20 +00:00
Michael Stefaniuc 5c55df649b Converted HENHMETAFILE and HMETAFILE to a void*. 2002-07-29 00:14:59 +00:00
Marcus Meissner 99f4890788 Factored out the OLE 16 bit allocator from StringFromCLSID.
Implemented ProgIDFromCLSID16.
2002-07-25 23:55:55 +00:00
Patrik Stridvall a50698b903 Fixed some issues found by winapi_check. 2002-07-23 01:59:46 +00:00
Jon Griffiths 900f57052c Stub implementation for CoInitializeSecurity. 2002-07-19 00:23:27 +00:00
Juergen Schmied bdd7d8bc47 Fixed two leaks in file- and itemmoniker. 2002-07-16 01:43:24 +00:00
Marcus Meissner c1f3738568 Added a generic way of doing GetHGlobalFromILockBytes(). 2002-07-05 21:19:55 +00:00
Juergen Schmied 33817372fe Support for large and negative offsets. 2002-07-01 18:10:34 +00:00
Vincent Béron e35580f4c9 Fixed some various comparisons wrt signedness. 2002-06-21 22:25:17 +00:00
Alexandre Julliard bf50153479 Fixed CLSIDFromString endianness assumptions (reported by Gregg Mattinson). 2002-06-21 21:55:37 +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 a5755b10a7 Authors: Mike McCormack <mikem@codeweavers.com>, Jeremy White <jwhite@codeweavers.com>
Fixed memory leaks.
2002-06-13 23:54:55 +00:00
Marcus Meissner fd625ddb0b Added marshalling of IUnknown. 2002-06-04 22:14:06 +00:00
Bill Medland 978a934245 Fixed incorrect pointer-cast arithmetic.
Extended ole trace information.
Don't lose the existing pipes on alloc failure.
2002-06-04 00:53:21 +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
Bill Medland d36c8e9d0c Ensure that an out-of-process COM object is started only once.
Allow out-of-process COM objects if request is for
in-or-out-of-process.
2002-05-29 19:20:32 +00:00
Marcus Meissner e656fc1cd6 Dropped superflous Remote_CoGetClassObject() (entirely contained in
create_marshalled_proxy()).
2002-05-29 19:05:14 +00:00
Marcus Meissner f9bf085108 Tell the user if winedefault.reg is not loaded. 2002-05-16 20:26:40 +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
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 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
Patrik Stridvall ee7c86f277 Fixed some issues found by winapi_check. 2002-03-11 01:17:26 +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
Mike McCormack c129764af1 Fixed merge error. 2002-02-28 20:46:31 +00:00
Stefan Leichter 923861fbd2 Compile fix for GCC 2.7.x. 2002-02-22 21:22:06 +00:00
Sander van Leeuwen 3ad8d3f0d0 Must make a copy of global handle returned by GetClipboardData; it is
not valid after we call CloseClipboard. Application is responsible for
freeing the memory (fixes copy/paste in mail body in Forte Agent).
2002-02-19 18:22:28 +00:00
Patrik Stridvall 651a8ba880 Added some defines for compatibility with Windows headers. 2002-02-15 19:12:35 +00:00
Lawson Whitney d23cf08262 Fix off-by-one error in placing trailing \0. 2002-02-08 17:09:11 +00:00
Marcus Meissner 0749fc2034 Implemented Local Server COM.
Implemented the Typelib based Marshaler.
2002-02-05 18:11:17 +00:00
Patrik Stridvall 57e5784c21 Move __stdcall/__cdecl to the right place. 2002-02-02 18:42:11 +00:00
Alexandre Julliard 925d602766 CodeWeavers
Small fixes.
2002-01-31 21:01:35 +00:00
Patrik Stridvall 74e4d21ebe Avoid wildcards in .cvsignore. 2002-01-29 03:05:12 +00:00
Bill Medland 43471ddf0b CoGetClassObject: for CLSCTX_LOCAL_SERVER at least look up the server
in the registry, even though we don't yet execute it.
2002-01-18 18:09:37 +00:00
Marcus Meissner 4a29e1f11a Removed some useless wingdi.h includes. 2002-01-14 18:36:37 +00:00
Marcus Meissner 6ea7932c80 Implemented CoTreatAsClass, simplified OleSetAutoConvert. 2002-01-03 02:34:09 +00:00
Alexandre Julliard 193cf50a09 Removed some of the calls to HEAP_strdup* functions. 2002-01-01 00:24:30 +00:00
Jukka Heinonen 420f6c0030 Name of the structured storage file root node is path of the file, not
the name of the root node stored in the file.
When reading streams stored into structured storage files, EOF is not
supposed to cause an error if at least one byte can be returned.
2002-01-01 00:13:32 +00:00
Alexandre Julliard 851297919b Use MapLS/UnMapLS instead of SEGPTR_* macros. 2001-12-24 20:30:24 +00:00
Alexandre Julliard b0f586178a Moved heap functions to ntdll.
Got rid of internal heap flags.
Reimplemented MapLS to not depend on the segptr heap.
2001-12-19 19:16:27 +00:00
Andreas Mohr 9cef2d0b1d - fix wrong hexadecimal GetLastError() output
- misc fixes
- changed my email address
2001-11-19 02:30:01 +00:00
Huw D M Davies f3d962226f Better failure messages for CoCreateInstance. 2001-10-23 19:52:08 +00:00
Francois Gouget 3bb9a36ee0 Spelling, grammar and a bit of comment formatting fixes. 2001-10-22 19:04:32 +00:00
Patrik Stridvall 3c0211f969 Cleanup code that is strange or difficult to parse. 2001-09-11 00:32:32 +00:00
Hidenori Takeshima aad36bcd59 Synchronize access to the s_COMLockCount, firstRegisteredClass,
openDllList in compobj.
2001-09-11 00:26:12 +00:00
Bill Medland 548d8a2a07 Basic implementation of IStream:Clone. 2001-09-10 23:14:39 +00:00
Francois Gouget 588ff3743a Documentation updates (mainly thru vs. through). 2001-08-21 17:07:17 +00:00
Patrik Stridvall 6ad988eb2d Fixed some warnings. 2001-07-29 20:19:51 +00:00
Alexandre Julliard 1922c72b8a Removed unnecessary inclusion of heap.h. 2001-07-25 00:43:29 +00:00
Patrik Stridvall 4b1574577d - Made sure that the files that contains the declarations
of the implementated functions are included.
- Corrected mismatching prototypes.
- Cleaned up the include section.
2001-07-23 23:50:18 +00:00
Patrik Stridvall bc38d6bfde - Made sure that the files that contains the declarations
of the implementated functions are included.
- Corrected mismatching prototypes.
- Cleaned up the include section.
2001-07-20 18:00:00 +00:00
Marcus Meissner 1ef0d39c66 Made some FIXME()s print the respective strings passed.
Changed StgSetTimes() to correct type.
2001-07-14 00:47:52 +00:00
Patrik Stridvall e9782fa1fc Documentation fixes. 2001-07-12 22:33:51 +00:00
Patrik Stridvall 044855c6ec Documentation fixes. 2001-07-11 18:56:41 +00:00
Patrik Stridvall 655b2044d9 Fixed issues found by winapi_check. 2001-07-08 22:32:51 +00:00
Patrik Stridvall 01d5e5b071 Documentation fixes. 2001-07-02 19:59:40 +00:00
Patrik Stridvall a274dd9105 Fixed some issues found by winapi_check. 2001-07-02 01:22:10 +00:00
Dmitry Timoshkov 93e936f97b Finish ole32 separation. 2001-06-28 17:59:22 +00:00
Patrik Stridvall 3ca9823941 Documentation ordinal fixes. 2001-06-20 23:03:14 +00:00
Patrik Stridvall 8b216b3d02 Documentation ordinal fixes. 2001-06-19 18:20:47 +00:00
Patrik Stridvall 172cd1b967 Fixed some issues found by winapi_check. 2001-06-11 20:16:11 +00:00
Francois Gouget e76218dd61 Add '\n' at the end of traces. 2001-05-09 17:31:31 +00:00
Patrik Stridvall b3086a7593 Fixed some issues found by winapi_check. 2001-04-25 19:54:21 +00:00
Andreas Mohr f32f918123 Spelling fixes. 2001-04-20 18:36:05 +00:00
Dmitry Timoshkov cc3dcc4a22 Implementation of OLE32.IsAccelerator. 2001-04-16 18:58:09 +00:00
Dmitry Timoshkov 973355f617 Return STG_E_FILEALREADYEXISTS in ole32.StgOpenStorage if the file is
not a storage object.
2001-04-16 18:57:18 +00:00
Marcus Meissner 40af1a87a5 Arg 3 of CoGetClassObject is COSERVERINFO*, added some more debug. 2001-04-09 18:33:49 +00:00
Marcus Meissner 826c1af100 Added GetConvertStg stub. 2001-04-09 18:33:03 +00:00
Gerard Patel 282bdb3564 Don't try to create file twice in the NULL filename case for
StgCreateDocFile.
2001-03-31 00:51:54 +00:00
Francois Gouget 282f7270c1 Small 'typos in comments' fixes. 2001-02-28 05:31:02 +00:00
Francois Gouget b87a83866f Change the callback declarations to a safer format. 2001-02-12 03:51:04 +00:00
Francois Gouget 3fb4cf70a7 Fix typos in comments. 2001-02-12 03:48:24 +00:00
Andreas Mohr ae4f72f5be Take a stab at implementing OleSetAutoConvert. 2001-02-12 01:26:16 +00:00
Huw D M Davies a3fca2a933 Fix ReleaseStgMedium for MetaFilePict types. 2001-02-12 01:22:01 +00:00
James Juran f4d5fefb0a Add <string.h> to files that needed it. 2001-01-26 20:43:40 +00:00
Andreas Mohr c9cf70d448 Some more cleanups. 2001-01-26 20:40:50 +00:00
Alexandre Julliard 0618746265 Cleaned up dll startup routines now that we have separate address
spaces.
2001-01-17 22:03:18 +00:00
Francois Gouget a1d23f5da6 Removed the 'fn' prefix (i.e. ICOM_FN). 2001-01-04 22:59:48 +00:00
François Gouget 44a182229b winuser.h now requires that we include winbase.h first. 2000-12-19 04:53:20 +00:00
Gerard Patel 9ea31be4ff Stub for DllDebugObjectRPCHook. 2000-12-19 03:38:05 +00:00
Huw D M Davies 3d3dc23ab2 Check to see whether any ancestor windows are drop targets. 2000-12-15 20:54:18 +00:00
Alexandre Julliard 982a223f36 Replaced PTR_SEG_TO_LIN macro by exported MapSL function.
Fixed a few ptr/segptr mismatches.
Moved CONV_RECT/POINT macros to wingdi16.h.
2000-12-13 20:20:09 +00:00
Alexandre Julliard 5be8e7d8e0 Created a small static library in ole/libuuid.a that contains all the
UUID definitions (with the help of Francois Gouget).
2000-12-06 01:50:47 +00:00
Francois Gouget 519346a47e Fixed miscellaneous typos, syntactic and grammatical errors. 2000-12-02 20:18:08 +00:00
Patrik Stridvall 2b3aa616e8 Added/modified documentation for function arguments. 2000-12-01 23:58:28 +00:00
Alexandre Julliard ef57e18f99 Removed some unnecessary includes. 2000-12-01 21:32:55 +00:00
Alexandre Julliard b2ed2528b4 Finished separation of ole32. 2000-11-30 20:29:30 +00:00