Closed
Bug 1073113
Opened 11 years ago
Closed 11 years ago
ImageClient updates may race on D3D11
Categories
(Core :: Graphics: Layers, defect)
Tracking
()
RESOLVED
FIXED
mozilla35
People
(Reporter: nical, Assigned: nical)
References
Details
Attachments
(1 file)
|
1.83 KB,
patch
|
mattwoodrow
:
review+
|
Details | Diff | Splinter Review |
When setting an image that can't be shared in an ImageClient, we need to copy it into a TextureClient. In the case of D3D11 (and more generally when the texture doesn't have an internal buffer) we should not use a single buffered ImageClient which writes directly into the front buffer, because it breaks the transactional guarantee of layer updates.
| Assignee | ||
Comment 1•11 years ago
|
||
Assignee: nobody → nical.bugzilla
Attachment #8495431 -
Flags: review?(matt.woodrow)
Comment 2•11 years ago
|
||
Comment on attachment 8495431 [details] [diff] [review]
use double buffered ImageClient with D3D11.
Review of attachment 8495431 [details] [diff] [review]:
-----------------------------------------------------------------
::: gfx/layers/client/ClientImageLayer.cpp
@@ +104,5 @@
> mImageClientTypeContainer = CompositableType::BUFFER_BRIDGE;
> return mImageClientTypeContainer;
> }
>
> + if (ClientManager()->GetCompositorBackendType() == LayersBackend::LAYERS_D3D11) {
Add a comment about why d3d11 is annoying.
::: gfx/layers/client/ImageClient.cpp
@@ +34,5 @@
> #include "mozilla/gfx/2D.h"
> #ifdef MOZ_WIDGET_GONK
> #include "GrallocImages.h"
> #endif
> +#include "nsExpirationTracker.h"
Remove this
Attachment #8495431 -
Flags: review?(matt.woodrow) → review+
| Assignee | ||
Comment 3•11 years ago
|
||
Comment 4•11 years ago
|
||
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla35
You need to log in
before you can comment on or make changes to this bug.
Description
•