Chromium Code Reviews| Index: third_party/WebKit/Source/modules/vr/VRDisplay.cpp |
| diff --git a/third_party/WebKit/Source/modules/vr/VRDisplay.cpp b/third_party/WebKit/Source/modules/vr/VRDisplay.cpp |
| index 0c85c13a84877f6bde86a1ac2583841d2cf1ddd4..a6486fd050a9fc13e9c8b7840da6866a22b9947e 100644 |
| --- a/third_party/WebKit/Source/modules/vr/VRDisplay.cpp |
| +++ b/third_party/WebKit/Source/modules/vr/VRDisplay.cpp |
| @@ -558,9 +558,15 @@ void VRDisplay::submitFrame() { |
| RefPtr<Image> imageRef = m_renderingContext->getImage( |
| PreferAcceleration, SnapshotReasonCreateImageBitmap); |
| - // Hardware-accelerated rendering should always be texture backed. |
| - // I hope nobody is trying to do WebVR with software rendering. |
| - DCHECK(imageRef->isTextureBacked()); |
| + // Hardware-accelerated rendering should always be texture backed, |
| + // as implemented by AcceleratedStaticBitmapImage. Ensure this is |
| + // the case, don't attempt to render if using software rendering. We |
| + // could implement an alternate slow path here for tests if |
|
ddorwin
2017/03/13 20:05:38
How/when will we know?
klausw
2017/03/13 20:20:26
Symptom would be the eye views staying black with
|
| + // applicable. |
| + if (!imageRef->isTextureBacked()) { |
| + DLOG(ERROR) << "WebVR requires hardware-accelerated rendering to texture"; |
| + return; |
| + } |
| // The AcceleratedStaticBitmapImage must be kept alive until the |
| // mailbox is used via createAndConsumeTextureCHROMIUM, the mailbox |