ReactOS  0.4.15-dev-1397-g19779b3
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 
462  This = HeapAlloc(GetProcessHeap(), 0, sizeof(PropertyStore));
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 }
#define DWORD_PTR
Definition: treelist.c:76
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
VOID WINAPI InitializeCriticalSection(OUT LPCRITICAL_SECTION lpCriticalSection)
Definition: synch.c:751
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:595
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
LONG HRESULT
Definition: typedefs.h:79
int ret
static const IPropertyStoreCacheVtbl PropertyStore_Vtbl
Definition: propstore.c:436
#define CLASS_E_NOAGGREGATION
Definition: winerror.h:2662
#define NULL
Definition: types.h:112
__WINE_SERVER_LIST_INLINE void list_init(struct list *list)
Definition: list.h:149

Referenced by InMemoryPropertyStoreFactory_CreateInstance(), and PSCreateMemoryPropertyStore().