Hi Rakesh, On 21 Feb 2014, at 2:18 pm, Rakesh Sadhu <rakeshsa...@hotmail.com> wrote:
> I have a question, When a glcontext is lost and again restored , what should > be the behaviour of associated extensions ? When a ContextLost occurs on a WebGLRenderingContext all extensions should be reset, as described by the specification (with the exception of the special extension that can manually trigger a ContextLost). This doesn’t necessarily mean the values get NULLed (since you may have an existing reference), just that they will fire exceptions if you use them. I have an in-progress pull request on a test case for this, on the Khronos github repository. BTW - this question is probably best suited to the WebGL mailing lists, unless you think there is a WebKit bug. Dean > I have a test case > http://www.khronos.org/registry/webgl/sdk/tests/conformance/context/context-lost-restored.html, > and in it I am confused to see that upon context restoration , test case > expects extension 's related API's to be NULL . > > here is the js code snippet from above mentioned link: > > > function testOESVertexArrayObject() { > if (OES_vertex_array_object) { > // Extension must still be lost. > shouldBeNull("OES_vertex_array_object.createVertexArrayOES()"); // WHY > ???? > // Try re-enabling extension > > old_OES_vertex_array_object = OES_vertex_array_object; > OES_vertex_array_object = reGetExtensionAndTestForProperty(gl, > "OES_vertex_array_object", false); > shouldBeTrue("OES_vertex_array_object.createVertexArrayOES() != null"); > shouldBeTrue("old_OES_vertex_array_object.createVertexArrayOES() == > null"); > } > } > > function testExtensions() { > testOESTextureFloat(); > testOESVertexArrayObject(); > // Only the WEBGL_lose_context extension should be the same object after > context lost. > new_WEBGL_lose_context = reGetExtensionAndTestForProperty(gl, > "WEBGL_lose_context", true); > } > > > /// this function is a callback function , which is attached to > addeventlistener in above mention link// > > function testRestoredContext() > { > debug("Test restored context"); > shouldBeFalse("contextRestoredEventFired"); > contextRestoredEventFired = true; > shouldBeFalse("gl.isContextLost()"); > shouldBe("gl.getError()", "gl.NO_ERROR"); > > // Validate that using old resources fails. > testResources(gl.INVALID_OPERATION); > > testRendering(); > > // Validate new resources created in testRendering(). > testResources(gl.NO_ERROR); > > testExtensions(); > > debug(""); > } > > Our Webkit Nightly Build fails > shouldBeNull("OES_vertex_array_object.createVertexArrayOES()") > which it should fail , however khronous test case suite expects it to PASS , > adn i tested this on chrome on windows, that passes :( > > > Kindly put some light here.. > regards > rsadhu > > > regards > RSadhu > _______________________________________________ > webkit-dev mailing list > webkit-dev@lists.webkit.org > https://lists.webkit.org/mailman/listinfo/webkit-dev
_______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-dev