[PATCH v3 1/6] mfplat: Implement MFCreateDXGIDeviceManager().
Nikolay Sivov
nsivov at codeweavers.com
Thu Aug 29 09:35:02 CDT 2019
On 8/29/19 4:46 PM, Jactry Zeng wrote:
> +HRESULT WINAPI MFCreateDXGIDeviceManager(UINT *token, IMFDXGIDeviceManager **manager)
> +{
> + struct dxgi_device_manager *object;
> +
> + TRACE("(%p, %p).\n", token, manager);
> +
> + if (!token || !manager)
> + return E_POINTER;
> +
> + object = heap_alloc(sizeof(*object));
> + if (!object)
> + return E_OUTOFMEMORY;
> +
> + object->IMFDXGIDeviceManager_iface.lpVtbl = &dxgi_device_manager_vtbl;
> + object->refcount = 1;
> + object->token = MFGetSystemTime() >> 16;
> +
> + TRACE("Created device manager: %p, token: %u.\n", object, object->token);
> +
> + *token = object->token;
> + *manager = &object->IMFDXGIDeviceManager_iface;
> +
> + return S_OK;
> +}
Why 16? I still think it'd be better to use something more predictable,
like sequentially incremented global counter.
I'll take a look, maybe it's easy to get "right" pattern for it.
More information about the wine-devel
mailing list