[PATCH 1/3] wined3d: Prepare the destination location in surface_load_location.

Henri Verbeet hverbeet at gmail.com
Wed Nov 4 05:30:01 CST 2015

On 3 November 2015 at 23:55, Stefan Dösinger <stefan at codeweavers.com> wrote:
> Instead of its sub-functions. See comments in patch 3 for details about
> surface_blt_fbo.
> This fixes bug 39536. surface_load_location didn't prepare the
> multisample renderbuffer.
> The next patches will consistently move the responsibility to the caller
> of surface_load_location.
This isn't necessarily wrong on its own, although I wonder if it's
really worth it. I don't think it makes the API easier to use
correctly, and I don't think there's going to be much of a performance

For fixing bug 39536 this is wrong though. If I'm reading the terminal
output there correctly, the issue is that load_location() is called
with WINED3D_LOCATION_RB_MULTISAMPLE, which it doesn't know how to
handle. This patch will hide the issue by simply always calling
prepare_location(). I'd have to check if multisample surfaces are
supposed to have defined content after creation and presents, but
perhaps what you need to do here is to add proper
WINED3D_LOCATION_DISCARDED handling for multisample surfaces, similar
to depth stencil surfaces.

More information about the wine-devel mailing list