79 0, 0, { (
DWORD_PTR)(__FILE__
": global interface table") }
105 TRACE(
"Entry not found\n");
135 IGlobalInterfaceTable_AddRef(iface);
171 TRACE(
"About to marshal the interface\n");
204 *pdwCookie =
entry->cookie;
220 TRACE(
"iface=%p, dwCookie=0x%x\n", iface, dwCookie);
226 TRACE(
"Entry not found\n");
239 WARN(
"Failed to release marshal data, hr = 0x%08x\n",
hr);
242 IStream_Release(
entry->stream);
264 WARN(
"Entry for cookie 0x%x not found\n", dwCookie);
276 WARN(
"Failed to clone stream with error 0x%08x\n",
hres);
285 WARN(
"Failed to unmarshal stream\n");
324 IGlobalInterfaceTable_Release(git);
330 FIXME(
"(%d), stub!\n",fLock);
347 TRACE(
"Returning GIT classfactory\n");
369 if (!newGIT)
return NULL;
380 TRACE(
"Created the GIT at %p\n", newGIT);
399 IStream_Release(
entry->stream);
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static void list_remove(struct list_entry *entry)
static void list_add_tail(struct list_entry *head, struct list_entry *entry)
static void list_init(struct list_entry *head)
const GUID IID_IClassFactory
#define HeapFree(x, y, z)
HRESULT WINAPI CreateStreamOnHGlobal(HGLOBAL hGlobal, BOOL fDeleteOnRelease, LPSTREAM *ppstm)
HRESULT WINAPI CoReleaseMarshalData(IStream *pStream)
HRESULT WINAPI CoUnmarshalInterface(IStream *pStream, REFIID riid, LPVOID *ppv)
HRESULT WINAPI CoMarshalInterface(IStream *pStream, REFIID riid, IUnknown *pUnk, DWORD dwDestContext, void *pvDestContext, DWORD mshlFlags)
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
static HRESULT WINAPI StdGlobalInterfaceTable_RevokeInterfaceFromGlobal(IGlobalInterfaceTable *iface, DWORD dwCookie)
static IGlobalInterfaceTable * std_git
static HRESULT WINAPI GITCF_CreateInstance(LPCLASSFACTORY iface, LPUNKNOWN pUnk, REFIID riid, LPVOID *ppv)
static StdGlobalInterfaceTableImpl * impl_from_IGlobalInterfaceTable(IGlobalInterfaceTable *iface)
void release_std_git(void)
static const IClassFactoryVtbl GITClassFactoryVtbl
HRESULT StdGlobalInterfaceTable_GetFactory(LPVOID *ppv)
static CRITICAL_SECTION_DEBUG critsect_debug
static StdGITEntry * StdGlobalInterfaceTable_FindEntry(StdGlobalInterfaceTableImpl *This, DWORD cookie)
static CRITICAL_SECTION git_section
static ULONG WINAPI GITCF_AddRef(LPCLASSFACTORY iface)
static HRESULT WINAPI StdGlobalInterfaceTable_QueryInterface(IGlobalInterfaceTable *iface, REFIID riid, void **ppvObject)
static const IGlobalInterfaceTableVtbl StdGlobalInterfaceTableImpl_Vtbl
static HRESULT WINAPI GITCF_LockServer(LPCLASSFACTORY iface, BOOL fLock)
static HRESULT WINAPI StdGlobalInterfaceTable_RegisterInterfaceInGlobal(IGlobalInterfaceTable *iface, IUnknown *pUnk, REFIID riid, DWORD *pdwCookie)
IGlobalInterfaceTable * get_std_git(void)
static IClassFactory git_classfactory
static ULONG WINAPI StdGlobalInterfaceTable_Release(IGlobalInterfaceTable *iface)
static ULONG WINAPI StdGlobalInterfaceTable_AddRef(IGlobalInterfaceTable *iface)
static HRESULT WINAPI GITCF_QueryInterface(LPCLASSFACTORY iface, REFIID riid, LPVOID *ppv)
static ULONG WINAPI GITCF_Release(LPCLASSFACTORY iface)
static HRESULT WINAPI StdGlobalInterfaceTable_GetInterfaceFromGlobal(IGlobalInterfaceTable *iface, DWORD dwCookie, REFIID riid, void **ppv)
#define InterlockedCompareExchangePointer
#define IsEqualIID(riid1, riid2)
#define LIST_FOR_EACH_ENTRY(elem, list, type, field)
#define LIST_FOR_EACH_ENTRY_SAFE(cursor, cursor2, list, type, field)
IGlobalInterfaceTable IGlobalInterfaceTable_iface
LIST_ENTRY ProcessLocksList
#define CONTAINING_RECORD(address, type, field)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject