[PATCH] windowscodecs: Implement WICCreateBitmapFromSection.

Hans Leidekker hans at codeweavers.com
Thu Mar 15 09:32:13 CDT 2018


On Thu, 2018-03-15 at 20:31 +0800, Dmitry Timoshkov wrote:
> +HRESULT WINAPI WICCreateBitmapFromSectionEx(UINT width, UINT height,
> +        REFWICPixelFormatGUID format, HANDLE section, UINT stride,
> +        UINT offset, WICSectionAccessLevel wicaccess, IWICBitmap **bitmap)
> +{
> +    DWORD access;
> +    void *buffer;
> +    HRESULT hr;
> +
> +    TRACE("%u,%u,%s,%p,%u,%#x,%#x,%p\n", width, height, debugstr_guid(format),
> +        section, stride, offset, wicaccess, bitmap);
> +
> +    if (!width || !height || !section || !bitmap) return E_INVALIDARG;
> +
> +    switch (wicaccess)
> +    {
> +    case WICSectionAccessLevelReadWrite:
> +        access = FILE_MAP_READ | FILE_MAP_WRITE;
> +        break;
> +
> +    case WICSectionAccessLevelRead:
> +        access = FILE_MAP_READ;
> +        break;
> +
> +    default:
> +        FIXME("unsupported access %#x\n", wicaccess);
> +        return E_INVALIDARG;
> +    }
> +
> +    buffer = MapViewOfFile(section, access, 0, offset, 0);
> +    if (!buffer) return HRESULT_FROM_WIN32(GetLastError());

MapViewOfFile wants a multiple of the allocation granularity for the
offset. Does WICCreateBitmapFromSectionEx have the same constraint?




More information about the wine-devel mailing list