mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Backed out changeset c7d73cfc59cb (bug 927995)
This commit is contained in:
parent
5fd8df60d0
commit
a595a7e43d
@ -403,18 +403,7 @@ GLScreenBuffer::Attach(SharedSurface* surf, const gfx::IntSize& size)
|
||||
} else {
|
||||
// Else something changed, so resize:
|
||||
UniquePtr<DrawBuffer> draw;
|
||||
bool drawOk = true;
|
||||
|
||||
/* Don't change out the draw buffer unless we resize. In the
|
||||
* preserveDrawingBuffer:true case, prior contents of the buffer must
|
||||
* be retained. If we're using a draw buffer, it's an MSAA buffer, so
|
||||
* even if we copy the previous frame into the (single-sampled) read
|
||||
* buffer, if we need to re-resolve from draw to read (as triggered by
|
||||
* drawing), we'll need the old MSAA content to still be in the draw
|
||||
* buffer.
|
||||
*/
|
||||
if (!mDraw || size != Size())
|
||||
drawOk = CreateDraw(size, &draw); // Can be null.
|
||||
bool drawOk = CreateDraw(size, &draw); // Can be null.
|
||||
|
||||
UniquePtr<ReadBuffer> read = CreateRead(surf);
|
||||
bool readOk = !!read;
|
||||
@ -425,9 +414,7 @@ GLScreenBuffer::Attach(SharedSurface* surf, const gfx::IntSize& size)
|
||||
return false;
|
||||
}
|
||||
|
||||
if (draw)
|
||||
mDraw = Move(draw);
|
||||
|
||||
mDraw = Move(draw);
|
||||
mRead = Move(read);
|
||||
}
|
||||
|
||||
@ -440,8 +427,6 @@ GLScreenBuffer::Attach(SharedSurface* surf, const gfx::IntSize& size)
|
||||
mRead->SetReadBuffer(mUserReadBufferMode);
|
||||
}
|
||||
|
||||
RequireBlit();
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -465,8 +450,7 @@ GLScreenBuffer::Swap(const gfx::IntSize& size)
|
||||
|
||||
if (ShouldPreserveBuffer() &&
|
||||
mFront &&
|
||||
mBack &&
|
||||
!mDraw)
|
||||
mBack)
|
||||
{
|
||||
auto src = mFront->Surf();
|
||||
auto dest = mBack->Surf();
|
||||
|
Loading…
Reference in New Issue
Block a user