HRESULT d3d_buffer_create(struct d3d_device *device, const D3D11_BUFFER_DESC *desc, const D3D11_SUBRESOURCE_DATA *data, struct d3d_buffer **buffer) { struct d3d_buffer *object; HRESULT hr; if (!(object = heap_alloc_zero(sizeof(*object)))) return E_OUTOFMEMORY; if (FAILED(hr = d3d_buffer_init(object, device, desc, data))) { WARN("Failed to initialize buffer, hr %#x.\n", hr); heap_free(object); return hr; } TRACE("Created buffer %p.\n", object); *buffer = object; return S_OK; }
HRESULT d3d_buffer_create(struct d3d_device *device, const D3D11_BUFFER_DESC *desc, const D3D11_SUBRESOURCE_DATA *data, struct d3d_buffer **buffer) { struct d3d_buffer *object; HRESULT hr; if (!(object = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(*object)))) return E_OUTOFMEMORY; if (FAILED(hr = d3d_buffer_init(object, device, desc, data))) { WARN("Failed to initialize buffer, hr %#x.\n", hr); HeapFree(GetProcessHeap(), 0, object); return hr; } TRACE("Created buffer %p.\n", object); *buffer = object; return S_OK; }