[PATCH 1/2] mmdevapi: allow GetPropValue function in audio drivers

Nikolay Sivov bunglehead at gmail.com
Tue Nov 18 22:17:29 CST 2014


On 18.11.2014 20:59, Mark Harmstone wrote:
> +    if (SUCCEEDED(hr))
> +    {
> +        MMDevice_SetPropValue(id, flow, prop, &pv);
> +
> +        if (pv.vt == VT_LPWSTR)
> +            HeapFree(GetProcessHeap(), 0, pv.u.pwszVal);
> +    }

> +                out->vt = VT_LPWSTR;
> +                out->u.pwszVal = HeapAlloc(GetProcessHeap(), 0, 256 * sizeof(WCHAR));

This is a wrong way dealing with PROPVARIANT, you need to use 
PropVariantClear() and InitPropVariantFromString() - PROPVARIANT implies 
CoTaskMemAlloc/CoTaskMemFree memory management.



More information about the wine-devel mailing list