diff --git a/dom/canvas/ClientWebGLContext.cpp b/dom/canvas/ClientWebGLContext.cpp index 4e55b9460b13..9183bc134902 100644 --- a/dom/canvas/ClientWebGLContext.cpp +++ b/dom/canvas/ClientWebGLContext.cpp @@ -3980,6 +3980,8 @@ void ClientWebGLContext::ReadPixels(GLint x, GLint y, GLsizei width, bool ClientWebGLContext::ReadPixels_SharedPrecheck( CallerType aCallerType, ErrorResult& out_error) const { + if (IsContextLost()) return false; + if (mCanvasElement && mCanvasElement->IsWriteOnly() && aCallerType != CallerType::System) { JsWarning("readPixels: Not allowed");