mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-13 13:25:37 +00:00
Bug 796182; fix invalidation on Mac with OMTC; r=cjones
This commit is contained in:
parent
dd644b20fe
commit
061a81e84d
@ -330,7 +330,14 @@ BasicShadowableThebesLayer::SetBackBufferAndAttrs(const OptionalThebesBuffer& aB
|
|||||||
mFrontAndBackBufferDiffer = true;
|
mFrontAndBackBufferDiffer = true;
|
||||||
mROFrontBuffer = aReadOnlyFrontBuffer;
|
mROFrontBuffer = aReadOnlyFrontBuffer;
|
||||||
mFrontUpdatedRegion = aFrontUpdatedRegion;
|
mFrontUpdatedRegion = aFrontUpdatedRegion;
|
||||||
mFrontValidRegion = aValidRegion;
|
|
||||||
|
if (OptionalThebesBuffer::Tnull_t == mROFrontBuffer.type()) {
|
||||||
|
// We didn't get back a read-only ref to our old back buffer (the
|
||||||
|
// parent's new front buffer). If the parent is pushing updates
|
||||||
|
// to a texture it owns, then we probably got back the same buffer
|
||||||
|
// we pushed in the update and all is well. If not, ...
|
||||||
|
mValidRegion = aValidRegion;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -360,11 +367,6 @@ BasicShadowableThebesLayer::SyncFrontBufferToBackBuffer()
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (OptionalThebesBuffer::Tnull_t == mROFrontBuffer.type()) {
|
if (OptionalThebesBuffer::Tnull_t == mROFrontBuffer.type()) {
|
||||||
// We didn't get back a read-only ref to our old back buffer (the
|
|
||||||
// parent's new front buffer). If the parent is pushing updates
|
|
||||||
// to a texture it owns, then we probably got back the same buffer
|
|
||||||
// we pushed in the update and all is well. If not, ...
|
|
||||||
mValidRegion = mFrontValidRegion;
|
|
||||||
mBuffer.SetBackingBuffer(backBuffer, mBackBufferRect, mBackBufferRectRotation);
|
mBuffer.SetBackingBuffer(backBuffer, mBackBufferRect, mBackBufferRectRotation);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -191,7 +191,6 @@ private:
|
|||||||
bool mIsNewBuffer;
|
bool mIsNewBuffer;
|
||||||
OptionalThebesBuffer mROFrontBuffer;
|
OptionalThebesBuffer mROFrontBuffer;
|
||||||
nsIntRegion mFrontUpdatedRegion;
|
nsIntRegion mFrontUpdatedRegion;
|
||||||
nsIntRegion mFrontValidRegion;
|
|
||||||
bool mFrontAndBackBufferDiffer;
|
bool mFrontAndBackBufferDiffer;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user