ReactOS 0.4.16-dev-336-gb667d82
propsys_private.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

HRESULT PropertyStore_CreateInstance (IUnknown *outer, REFIID riid, void **ppv) DECLSPEC_HIDDEN
 

Function Documentation

◆ PropertyStore_CreateInstance()

HRESULT PropertyStore_CreateInstance ( IUnknown outer,
REFIID  riid,
void **  ppv 
)

Definition at line 451 of file propstore.c.

452{
454 HRESULT ret;
455
456 TRACE("(%p,%s,%p)\n", pUnkOuter, debugstr_guid(iid), ppv);
457
458 *ppv = NULL;
459
460 if (pUnkOuter) return CLASS_E_NOAGGREGATION;
461
463 if (!This) return E_OUTOFMEMORY;
464
465 This->IPropertyStoreCache_iface.lpVtbl = &PropertyStore_Vtbl;
466 This->ref = 1;
468 This->lock.DebugInfo->Spare[0] = (DWORD_PTR)(__FILE__ ": PropertyStore.lock");
469 list_init(&This->formats);
470
471 ret = IPropertyStoreCache_QueryInterface(&This->IPropertyStoreCache_iface, iid, ppv);
472 IPropertyStoreCache_Release(&This->IPropertyStoreCache_iface);
473
474 return ret;
475}
static void list_init(struct list_entry *head)
Definition: list.h:51
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define NULL
Definition: types.h:112
#define GetProcessHeap()
Definition: compat.h:736
#define HeapAlloc
Definition: compat.h:733
static const IPropertyStoreCacheVtbl PropertyStore_Vtbl
Definition: propstore.c:436
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
Definition: synch.c:751
#define DWORD_PTR
Definition: treelist.c:76
int ret
#define CLASS_E_NOAGGREGATION
Definition: winerror.h:2662

Referenced by InMemoryPropertyStoreFactory_CreateInstance(), and PSCreateMemoryPropertyStore().