<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[199819] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/199819">199819</a></dd>
<dt>Author</dt> <dd>commit-queue@webkit.org</dd>
<dt>Date</dt> <dd>2016-04-21 09:38:16 -0700 (Thu, 21 Apr 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Creating a large number of WebGL contexts should recycle older contexts
https://bugs.webkit.org/show_bug.cgi?id=156689
&lt;rdar://problem/19535330&gt;

Patch by Antoine Quint &lt;graouts@apple.com&gt; on 2016-04-21
Reviewed by Dean Jackson.

Source/WebCore:

We used to stop creating WebGL contexts once a maximum of 64 WebGL contexts had been
created on a page. Other browsers have a limit of 16 concurrent active WebGL contexts
and they lose older contexts when the developer creates a new context, logging a warning
to the console. We now follow the same approach.

Tests: webgl/max-active-contexts-console-warning.html
       webgl/max-active-contexts-gc.html
       webgl/max-active-contexts-oldest-context-lost.html
       webgl/max-active-contexts-webglcontextlost-prevent-default.html

* html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::recycleContext):

Prints a warning message to the console indicating that an older WebGL context
will be lost to accomodate for the active contexts limit being reached and loses
the provided context in a way that it may not be recovered by calling `event.preventDefault()`
in the `webglcontextlost` event handler. Finally, we destroy the associated GraphicsContext3D
since it will no longer be useful and it may hold large Open GL resources.

* html/canvas/WebGLRenderingContextBase.h:
* platform/graphics/GraphicsContext3D.h:

Changed GraphicsContext3D::create to return RefPtr instead of PassRefPtr.

* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::create):
* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::create):
* platform/graphics/mac/GraphicsContext3DMac.mm:
(WebCore::activeContexts):
(WebCore::GraphicsContext3D::create):

Check if we are at the active contexts limit (16) and recycle the oldest context
in our active contexts list. Calling recycleContext() on a context will call the
GraphicsContext3D destructor and remove it from the active contexts list there.

(WebCore::GraphicsContext3D::~GraphicsContext3D):

Remove the deconstructed context from the active contexts list.

* platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
(WebCore::GraphicsContext3D::recycleContext):
* platform/graphics/win/GraphicsContext3DWin.cpp:
(WebCore::GraphicsContext3D::create):

LayoutTests:

* webgl/many-contexts-expected.txt:
* webgl/many-contexts.html:

New output for this existing test since a lot of warnings are now logged to
indicate that we've reached the active contexts limit. We also removed the
check that the last context created was null since it no longer is due to this
source change (older contexts are lost instead).

* webgl/max-active-contexts-console-warning-expected.txt: Added.
* webgl/max-active-contexts-console-warning.html: Added.

This new test checks that we log a warning when we've created one context more
than the active contexts limit.

* webgl/max-active-contexts-gc-expected.txt: Added.
* webgl/max-active-contexts-gc.html: Added.

This new test checks that contexts that are garbage collected do not count
agaist the active contexts limit.

* webgl/max-active-contexts-oldest-context-lost-expected.txt: Added.
* webgl/max-active-contexts-oldest-context-lost.html: Added.

This new test checks that older contexts are lost when we reach the active
contexts limit and we create a new context.

* webgl/max-active-contexts-webglcontextlost-prevent-default-expected.txt: Added.
* webgl/max-active-contexts-webglcontextlost-prevent-default.html: Added.

This new test checks that calling `event.preventDefault()` in a `webglcontextlost`
event handler does not prevent a context from being lost when the active contexts
limit is reached.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestswebglmanycontextsexpectedtxt">trunk/LayoutTests/webgl/many-contexts-expected.txt</a></li>
<li><a href="#trunkLayoutTestswebglmanycontextshtml">trunk/LayoutTests/webgl/many-contexts.html</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorehtmlcanvasWebGLRenderingContextBasecpp">trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp</a></li>
<li><a href="#trunkSourceWebCorehtmlcanvasWebGLRenderingContextBaseh">trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsGraphicsContext3Dh">trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicscairoGraphicsContext3DCairocpp">trunk/Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicseflGraphicsContext3DEflcpp">trunk/Source/WebCore/platform/graphics/efl/GraphicsContext3DEfl.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsmacGraphicsContext3DMacmm">trunk/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsopenglGraphicsContext3DOpenGLCommoncpp">trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicswinGraphicsContext3DWincpp">trunk/Source/WebCore/platform/graphics/win/GraphicsContext3DWin.cpp</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTestswebglmaxactivecontextsconsolewarningexpectedtxt">trunk/LayoutTests/webgl/max-active-contexts-console-warning-expected.txt</a></li>
<li><a href="#trunkLayoutTestswebglmaxactivecontextsconsolewarninghtml">trunk/LayoutTests/webgl/max-active-contexts-console-warning.html</a></li>
<li><a href="#trunkLayoutTestswebglmaxactivecontextsgcexpectedtxt">trunk/LayoutTests/webgl/max-active-contexts-gc-expected.txt</a></li>
<li><a href="#trunkLayoutTestswebglmaxactivecontextsgchtml">trunk/LayoutTests/webgl/max-active-contexts-gc.html</a></li>
<li><a href="#trunkLayoutTestswebglmaxactivecontextsoldestcontextlostexpectedtxt">trunk/LayoutTests/webgl/max-active-contexts-oldest-context-lost-expected.txt</a></li>
<li><a href="#trunkLayoutTestswebglmaxactivecontextsoldestcontextlosthtml">trunk/LayoutTests/webgl/max-active-contexts-oldest-context-lost.html</a></li>
<li><a href="#trunkLayoutTestswebglmaxactivecontextswebglcontextlostpreventdefaultexpectedtxt">trunk/LayoutTests/webgl/max-active-contexts-webglcontextlost-prevent-default-expected.txt</a></li>
<li><a href="#trunkLayoutTestswebglmaxactivecontextswebglcontextlostpreventdefaulthtml">trunk/LayoutTests/webgl/max-active-contexts-webglcontextlost-prevent-default.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/LayoutTests/ChangeLog        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -1,3 +1,44 @@
</span><ins>+2016-04-21  Antoine Quint  &lt;graouts@apple.com&gt;
+
+        Creating a large number of WebGL contexts should recycle older contexts
+        https://bugs.webkit.org/show_bug.cgi?id=156689
+        &lt;rdar://problem/19535330&gt;
+
+        Reviewed by Dean Jackson.
+
+        * webgl/many-contexts-expected.txt:
+        * webgl/many-contexts.html:
+
+        New output for this existing test since a lot of warnings are now logged to
+        indicate that we've reached the active contexts limit. We also removed the
+        check that the last context created was null since it no longer is due to this
+        source change (older contexts are lost instead).
+
+        * webgl/max-active-contexts-console-warning-expected.txt: Added.
+        * webgl/max-active-contexts-console-warning.html: Added.
+
+        This new test checks that we log a warning when we've created one context more
+        than the active contexts limit.
+
+        * webgl/max-active-contexts-gc-expected.txt: Added.
+        * webgl/max-active-contexts-gc.html: Added.
+
+        This new test checks that contexts that are garbage collected do not count
+        agaist the active contexts limit.
+
+        * webgl/max-active-contexts-oldest-context-lost-expected.txt: Added.
+        * webgl/max-active-contexts-oldest-context-lost.html: Added.
+
+        This new test checks that older contexts are lost when we reach the active
+        contexts limit and we create a new context.
+
+        * webgl/max-active-contexts-webglcontextlost-prevent-default-expected.txt: Added.
+        * webgl/max-active-contexts-webglcontextlost-prevent-default.html: Added.
+
+        This new test checks that calling `event.preventDefault()` in a `webglcontextlost`
+        event handler does not prevent a context from being lost when the active contexts
+        limit is reached.
+
</ins><span class="cx"> 2016-04-21  Dave Hyatt  &lt;hyatt@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Don't hyphenate the last word in a paragraph of text.
</span></span></pre></div>
<a id="trunkLayoutTestswebglmanycontextsexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/webgl/many-contexts-expected.txt (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/many-contexts-expected.txt        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/LayoutTests/webgl/many-contexts-expected.txt        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -1 +1,985 @@
</span><del>-PASS if this test did not crash and 1000th context was null.
</del><ins>+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+CONSOLE MESSAGE: line 12: There are too many active WebGL contexts on this page, the oldest context will be lost.
+PASS if this test did not crash.
</ins></span></pre></div>
<a id="trunkLayoutTestswebglmanycontextshtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/webgl/many-contexts.html (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/many-contexts.html        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/LayoutTests/webgl/many-contexts.html        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -1,4 +1,4 @@
</span><del>-&lt;div id=&quot;result&quot;&gt;PASS if this test did not crash and 1000th context was null.&lt;/div&gt;
</del><ins>+&lt;div id=&quot;result&quot;&gt;PASS if this test did not crash.&lt;/div&gt;
</ins><span class="cx"> &lt;script&gt;
</span><span class="cx"> if (window.testRunner) {
</span><span class="cx">     testRunner.waitUntilDone();
</span><span class="lines">@@ -11,8 +11,6 @@
</span><span class="cx">         canvii[i].height = 1;
</span><span class="cx">         var context = canvii[i].getContext(&quot;webgl&quot;, null);
</span><span class="cx">     }
</span><del>-    if (canvii[1000] != null)
-        document.getElementById(&quot;result&quot;).innerHTML = &quot;FAIL&quot;;
</del><span class="cx">     testRunner.notifyDone();
</span><span class="cx"> }
</span><span class="cx"> &lt;/script&gt;
</span></span></pre></div>
<a id="trunkLayoutTestswebglmaxactivecontextsconsolewarningexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/webgl/max-active-contexts-console-warning-expected.txt (0 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/max-active-contexts-console-warning-expected.txt                                (rev 0)
+++ trunk/LayoutTests/webgl/max-active-contexts-console-warning-expected.txt        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -0,0 +1,2 @@
</span><ins>+CONSOLE MESSAGE: line 9: There are too many active WebGL contexts on this page, the oldest context will be lost.
+
</ins></span></pre></div>
<a id="trunkLayoutTestswebglmaxactivecontextsconsolewarninghtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/webgl/max-active-contexts-console-warning.html (0 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/max-active-contexts-console-warning.html                                (rev 0)
+++ trunk/LayoutTests/webgl/max-active-contexts-console-warning.html        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;script&gt;
+// Tests that we log a warning to the console once we attempt to create a context and we passed the limit.
+if (window.testRunner)
+    testRunner.dumpAsText();
+
+var maxNumberOfActiveContexts = 16;
+var contexts = [];
+for (var i = 0; i &lt;= maxNumberOfActiveContexts; i++)
+    contexts[i] = document.createElement(&quot;canvas&quot;).getContext(&quot;webgl&quot;);
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestswebglmaxactivecontextsgcexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/webgl/max-active-contexts-gc-expected.txt (0 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/max-active-contexts-gc-expected.txt                                (rev 0)
+++ trunk/LayoutTests/webgl/max-active-contexts-gc-expected.txt        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -0,0 +1,2 @@
</span><ins>+CONSOLE MESSAGE: line 10: There are too many active WebGL contexts on this page, the oldest context will be lost.
+
</ins></span></pre></div>
<a id="trunkLayoutTestswebglmaxactivecontextsgchtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/webgl/max-active-contexts-gc.html (0 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/max-active-contexts-gc.html                                (rev 0)
+++ trunk/LayoutTests/webgl/max-active-contexts-gc.html        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -0,0 +1,47 @@
</span><ins>+&lt;script&gt;
+function forceGC() {
+    try {
+        for (var ndx = 0; ndx &lt; 99000; ndx++)
+            var numbers = new Float64Array(50 * 1024);
+    } catch (e) { }
+}
+
+function addContext() {
+    contexts.push(document.createElement(&quot;canvas&quot;).getContext(&quot;webgl&quot;));
+}
+
+if (window.testRunner) {
+    testRunner.waitUntilDone();
+    testRunner.dumpAsText();
+}
+
+var maxNumberOfActiveContexts = 16;
+var contextsToKeep = 8;
+var contexts = [];
+
+// Create the max number of active WebGL contexts.
+while (contexts.length &lt; maxNumberOfActiveContexts)
+    addContext();
+
+// Now remove some of those contexts from this array so they may be garbage collected.
+while (contexts.length &gt; contextsToKeep)
+    contexts.shift();
+
+setTimeout(function() {
+    if (window.GCController)
+        GCController.collect();
+    else
+        forceGC();
+
+    // Add contexts until we get to the limit then add one more. This should only
+    // produce a single warning that an older context will be lost.
+    setTimeout(function() {
+        while (contexts.length &lt; maxNumberOfActiveContexts + 1)
+            addContext();
+
+        if (window.testRunner)
+            testRunner.notifyDone();
+    });
+});
+
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestswebglmaxactivecontextsoldestcontextlostexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/webgl/max-active-contexts-oldest-context-lost-expected.txt (0 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/max-active-contexts-oldest-context-lost-expected.txt                                (rev 0)
+++ trunk/LayoutTests/webgl/max-active-contexts-oldest-context-lost-expected.txt        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -0,0 +1,2 @@
</span><ins>+CONSOLE MESSAGE: line 9: There are too many active WebGL contexts on this page, the oldest context will be lost.
+PASS if the first context was lost due to creating too many WebGL contexts.
</ins></span></pre></div>
<a id="trunkLayoutTestswebglmaxactivecontextsoldestcontextlosthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/webgl/max-active-contexts-oldest-context-lost.html (0 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/max-active-contexts-oldest-context-lost.html                                (rev 0)
+++ trunk/LayoutTests/webgl/max-active-contexts-oldest-context-lost.html        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -0,0 +1,13 @@
</span><ins>+&lt;div id=&quot;result&quot;&gt;PASS if the first context was lost due to creating too many WebGL contexts.&lt;/div&gt;
+&lt;script&gt;
+if (window.testRunner)
+    testRunner.dumpAsText();
+
+var maxNumberOfActiveContexts = 16;
+var contexts = [];
+for (var i = 0; i &lt;= maxNumberOfActiveContexts; i++)
+    contexts[i] = document.createElement(&quot;canvas&quot;).getContext(&quot;webgl&quot;);
+
+if (!contexts[0].isContextLost())
+    document.getElementById(&quot;result&quot;).textContent = &quot;FAIL&quot;;
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestswebglmaxactivecontextswebglcontextlostpreventdefaultexpectedtxt"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/webgl/max-active-contexts-webglcontextlost-prevent-default-expected.txt (0 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/max-active-contexts-webglcontextlost-prevent-default-expected.txt                                (rev 0)
+++ trunk/LayoutTests/webgl/max-active-contexts-webglcontextlost-prevent-default-expected.txt        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -0,0 +1,2 @@
</span><ins>+CONSOLE MESSAGE: line 19: There are too many active WebGL contexts on this page, the oldest context will be lost.
+PASS if the first context was lost due to creating too many WebGL contexts even though preventDefault() was called when a webglcontextlost event was dispatched.
</ins></span></pre></div>
<a id="trunkLayoutTestswebglmaxactivecontextswebglcontextlostpreventdefaulthtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/webgl/max-active-contexts-webglcontextlost-prevent-default.html (0 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/webgl/max-active-contexts-webglcontextlost-prevent-default.html                                (rev 0)
+++ trunk/LayoutTests/webgl/max-active-contexts-webglcontextlost-prevent-default.html        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -0,0 +1,21 @@
</span><ins>+&lt;div id=&quot;result&quot;&gt;PASS if the first context was lost due to creating too many WebGL contexts even though &lt;code&gt;preventDefault()&lt;/code&gt; was called when a &lt;code&gt;webglcontextlost&lt;/code&gt; event was dispatched.&lt;/div&gt;
+&lt;script&gt;
+if (window.testRunner) {
+    testRunner.waitUntilDone();
+    testRunner.dumpAsText();
+}
+
+var maxNumberOfActiveContexts = 16;
+var contexts = [];
+for (var i = 0; i &lt;= maxNumberOfActiveContexts; i++) {
+    var canvas = document.createElement(&quot;canvas&quot;);
+    canvas.addEventListener(&quot;webglcontextlost&quot;, function(event) {
+        event.preventDefault();
+        if (!contexts[0].isContextLost())
+            document.getElementById(&quot;result&quot;).textContent = &quot;FAIL&quot;;
+        if (window.testRunner)
+            testRunner.notifyDone();
+    });
+    contexts[i] = canvas.getContext(&quot;webgl&quot;);
+}
+&lt;/script&gt;
</ins></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/ChangeLog        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -1,3 +1,56 @@
</span><ins>+2016-04-21  Antoine Quint  &lt;graouts@apple.com&gt;
+
+        Creating a large number of WebGL contexts should recycle older contexts
+        https://bugs.webkit.org/show_bug.cgi?id=156689
+        &lt;rdar://problem/19535330&gt;
+
+        Reviewed by Dean Jackson.
+
+        We used to stop creating WebGL contexts once a maximum of 64 WebGL contexts had been
+        created on a page. Other browsers have a limit of 16 concurrent active WebGL contexts
+        and they lose older contexts when the developer creates a new context, logging a warning
+        to the console. We now follow the same approach.
+
+        Tests: webgl/max-active-contexts-console-warning.html
+               webgl/max-active-contexts-gc.html
+               webgl/max-active-contexts-oldest-context-lost.html
+               webgl/max-active-contexts-webglcontextlost-prevent-default.html
+
+        * html/canvas/WebGLRenderingContextBase.cpp:
+        (WebCore::WebGLRenderingContextBase::recycleContext):
+
+        Prints a warning message to the console indicating that an older WebGL context
+        will be lost to accomodate for the active contexts limit being reached and loses
+        the provided context in a way that it may not be recovered by calling `event.preventDefault()`
+        in the `webglcontextlost` event handler. Finally, we destroy the associated GraphicsContext3D
+        since it will no longer be useful and it may hold large Open GL resources.
+
+        * html/canvas/WebGLRenderingContextBase.h:
+        * platform/graphics/GraphicsContext3D.h:
+
+        Changed GraphicsContext3D::create to return RefPtr instead of PassRefPtr.
+
+        * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
+        (WebCore::GraphicsContext3D::create):
+        * platform/graphics/efl/GraphicsContext3DEfl.cpp:
+        (WebCore::GraphicsContext3D::create):
+        * platform/graphics/mac/GraphicsContext3DMac.mm:
+        (WebCore::activeContexts):
+        (WebCore::GraphicsContext3D::create):
+
+        Check if we are at the active contexts limit (16) and recycle the oldest context
+        in our active contexts list. Calling recycleContext() on a context will call the
+        GraphicsContext3D destructor and remove it from the active contexts list there.
+
+        (WebCore::GraphicsContext3D::~GraphicsContext3D):
+
+        Remove the deconstructed context from the active contexts list.
+
+        * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
+        (WebCore::GraphicsContext3D::recycleContext):
+        * platform/graphics/win/GraphicsContext3DWin.cpp:
+        (WebCore::GraphicsContext3D::create):
+
</ins><span class="cx"> 2016-04-21  Dave Hyatt  &lt;hyatt@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Don't hyphenate the last word in a paragraph of text.
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlcanvasWebGLRenderingContextBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -3773,6 +3773,15 @@
</span><span class="cx">     m_contextGroup-&gt;loseContextGroup(mode);
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+void WebGLRenderingContextBase::recycleContext()
+{
+    printWarningToConsole(&quot;There are too many active WebGL contexts on this page, the oldest context will be lost.&quot;);
+    // Using SyntheticLostContext means the developer won't be able to force the restoration
+    // of the context by calling preventDefault() in a &quot;webglcontextlost&quot; event handler.
+    forceLostContext(SyntheticLostContext);
+    destroyGraphicsContext3D();
+}
+
</ins><span class="cx"> void WebGLRenderingContextBase::loseContextImpl(WebGLRenderingContextBase::LostContextMode mode)
</span><span class="cx"> {
</span><span class="cx">     if (isContextLost())
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlcanvasWebGLRenderingContextBaseh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -336,6 +336,7 @@
</span><span class="cx">         SyntheticLostContext
</span><span class="cx">     };
</span><span class="cx">     void forceLostContext(LostContextMode);
</span><ins>+    void recycleContext();
</ins><span class="cx">     void forceRestoreContext();
</span><span class="cx">     void loseContextImpl(LostContextMode);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsGraphicsContext3Dh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -768,7 +768,7 @@
</span><span class="cx">     void setContextLostCallback(std::unique_ptr&lt;ContextLostCallback&gt;);
</span><span class="cx">     void setErrorMessageCallback(std::unique_ptr&lt;ErrorMessageCallback&gt;);
</span><span class="cx"> 
</span><del>-    static PassRefPtr&lt;GraphicsContext3D&gt; create(Attributes, HostWindow*, RenderStyle = RenderOffscreen);
</del><ins>+    static RefPtr&lt;GraphicsContext3D&gt; create(Attributes, HostWindow*, RenderStyle = RenderOffscreen);
</ins><span class="cx">     static PassRefPtr&lt;GraphicsContext3D&gt; createForCurrentGLContext();
</span><span class="cx">     ~GraphicsContext3D();
</span><span class="cx"> 
</span><span class="lines">@@ -1138,6 +1138,7 @@
</span><span class="cx">     void markLayerComposited();
</span><span class="cx">     bool layerComposited() const;
</span><span class="cx">     void forceContextLost();
</span><ins>+    void recycleContext();
</ins><span class="cx"> 
</span><span class="cx">     void paintRenderingResultsToCanvas(ImageBuffer*);
</span><span class="cx">     PassRefPtr&lt;ImageData&gt; paintRenderingResultsToImageData();
</span><span class="lines">@@ -1265,7 +1266,6 @@
</span><span class="cx"> 
</span><span class="cx"> private:
</span><span class="cx">     GraphicsContext3D(Attributes, HostWindow*, RenderStyle = RenderOffscreen);
</span><del>-    static int numActiveContexts;
</del><span class="cx">     static int GPUCheckCounter;
</span><span class="cx"> 
</span><span class="cx">     // Helper for packImageData/extractImageData/extractTextureData which implement packing of pixel
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicscairoGraphicsContext3DCairocpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/platform/graphics/cairo/GraphicsContext3DCairo.cpp        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><del>-PassRefPtr&lt;GraphicsContext3D&gt; GraphicsContext3D::create(GraphicsContext3D::Attributes attributes, HostWindow* hostWindow, GraphicsContext3D::RenderStyle renderStyle)
</del><ins>+RefPtr&lt;GraphicsContext3D&gt; GraphicsContext3D::create(GraphicsContext3D::Attributes attributes, HostWindow* hostWindow, GraphicsContext3D::RenderStyle renderStyle)
</ins><span class="cx"> {
</span><span class="cx">     // This implementation doesn't currently support rendering directly to the HostWindow.
</span><span class="cx">     if (renderStyle == RenderDirectlyToHostWindow)
</span><span class="lines">@@ -73,8 +73,7 @@
</span><span class="cx">     if (!success)
</span><span class="cx">         return 0;
</span><span class="cx"> 
</span><del>-    RefPtr&lt;GraphicsContext3D&gt; context = adoptRef(new GraphicsContext3D(attributes, hostWindow, renderStyle));
-    return context.release();
</del><ins>+    return adoptRef(new GraphicsContext3D(attributes, hostWindow, renderStyle));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> GraphicsContext3D::GraphicsContext3D(GraphicsContext3D::Attributes attributes, HostWindow*, GraphicsContext3D::RenderStyle renderStyle)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicseflGraphicsContext3DEflcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/efl/GraphicsContext3DEfl.cpp (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/efl/GraphicsContext3DEfl.cpp        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/platform/graphics/efl/GraphicsContext3DEfl.cpp        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -30,10 +30,10 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><del>-PassRefPtr&lt;GraphicsContext3D&gt; GraphicsContext3D::create(GraphicsContext3D::Attributes attrs, HostWindow* hostWindow, RenderStyle renderStyle)
</del><ins>+RefPtr&lt;GraphicsContext3D&gt; GraphicsContext3D::create(GraphicsContext3D::Attributes attrs, HostWindow* hostWindow, RenderStyle renderStyle)
</ins><span class="cx"> {
</span><span class="cx">     RefPtr&lt;GraphicsContext3D&gt; context = adoptRef(new GraphicsContext3D(attrs, hostWindow, renderStyle));
</span><del>-    return context-&gt;m_private ? context.release() : 0;
</del><ins>+    return context-&gt;m_private ? context : nullptr;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> GraphicsContext3D::GraphicsContext3D(GraphicsContext3D::Attributes attrs, HostWindow* hostWindow, GraphicsContext3D::RenderStyle renderStyle)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsmacGraphicsContext3DMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/platform/graphics/mac/GraphicsContext3DMac.mm        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -64,8 +64,13 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><del>-const int maxActiveContexts = 64;
-int GraphicsContext3D::numActiveContexts = 0;
</del><ins>+static Vector&lt;GraphicsContext3D*&gt;&amp; activeContexts()
+{
+    static NeverDestroyed&lt;Vector&lt;GraphicsContext3D*&gt;&gt; s_activeContexts;
+    return s_activeContexts;
+}
+
+const int MaxActiveContexts = 16;
</ins><span class="cx"> const int GPUStatusCheckThreshold = 5;
</span><span class="cx"> int GraphicsContext3D::GPUCheckCounter = 0;
</span><span class="cx"> 
</span><span class="lines">@@ -113,13 +118,20 @@
</span><span class="cx"> }
</span><span class="cx"> #endif // !PLATFORM(IOS)
</span><span class="cx"> 
</span><del>-PassRefPtr&lt;GraphicsContext3D&gt; GraphicsContext3D::create(GraphicsContext3D::Attributes attrs, HostWindow* hostWindow, GraphicsContext3D::RenderStyle renderStyle)
</del><ins>+RefPtr&lt;GraphicsContext3D&gt; GraphicsContext3D::create(GraphicsContext3D::Attributes attrs, HostWindow* hostWindow, GraphicsContext3D::RenderStyle renderStyle)
</ins><span class="cx"> {
</span><span class="cx">     // This implementation doesn't currently support rendering directly to the HostWindow.
</span><span class="cx">     if (renderStyle == RenderDirectlyToHostWindow)
</span><span class="cx">         return nullptr;
</span><span class="cx"> 
</span><del>-    if (numActiveContexts &gt;= maxActiveContexts)
</del><ins>+    Vector&lt;GraphicsContext3D*&gt;&amp; contexts = activeContexts();
+    
+    if (contexts.size() &gt;= MaxActiveContexts)
+        contexts.at(0)-&gt;recycleContext();
+    
+    // Calling recycleContext() above should have lead to the graphics context being
+    // destroyed and thus removed from the active contexts list.
+    if (contexts.size() &gt;= MaxActiveContexts)
</ins><span class="cx">         return nullptr;
</span><span class="cx"> 
</span><span class="cx">     RefPtr&lt;GraphicsContext3D&gt; context = adoptRef(new GraphicsContext3D(attrs, hostWindow, renderStyle));
</span><span class="lines">@@ -127,9 +139,9 @@
</span><span class="cx">     if (!context-&gt;m_contextObj)
</span><span class="cx">         return nullptr;
</span><span class="cx"> 
</span><del>-    numActiveContexts++;
</del><ins>+    contexts.append(context.get());
</ins><span class="cx"> 
</span><del>-    return context.release();
</del><ins>+    return context;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> GraphicsContext3D::GraphicsContext3D(GraphicsContext3D::Attributes attrs, HostWindow* hostWindow, GraphicsContext3D::RenderStyle renderStyle)
</span><span class="lines">@@ -335,8 +347,10 @@
</span><span class="cx">         CGLDestroyContext(m_contextObj);
</span><span class="cx"> #endif
</span><span class="cx">         [m_webGLLayer setContext:nullptr];
</span><del>-        numActiveContexts--;
</del><span class="cx">     }
</span><ins>+
+    ASSERT(activeContexts().contains(this));
+    activeContexts().removeFirst(this);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #if PLATFORM(IOS)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsopenglGraphicsContext3DOpenGLCommoncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -1851,6 +1851,14 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+void GraphicsContext3D::recycleContext()
+{
+#if ENABLE(WEBGL)
+    if (m_webglContext)
+        m_webglContext-&gt;recycleContext();
+#endif
+}
+
</ins><span class="cx"> void GraphicsContext3D::texImage2DDirect(GC3Denum target, GC3Dint level, GC3Denum internalformat, GC3Dsizei width, GC3Dsizei height, GC3Dint border, GC3Denum format, GC3Denum type, const void* pixels)
</span><span class="cx"> {
</span><span class="cx">     makeContextCurrent();
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicswinGraphicsContext3DWincpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/win/GraphicsContext3DWin.cpp (199818 => 199819)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/win/GraphicsContext3DWin.cpp        2016-04-21 16:25:13 UTC (rev 199818)
+++ trunk/Source/WebCore/platform/graphics/win/GraphicsContext3DWin.cpp        2016-04-21 16:38:16 UTC (rev 199819)
</span><span class="lines">@@ -45,11 +45,11 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><del>-PassRefPtr&lt;GraphicsContext3D&gt; GraphicsContext3D::create(GraphicsContext3D::Attributes attributes, HostWindow* hostWindow, GraphicsContext3D::RenderStyle renderStyle)
</del><ins>+RefPtr&lt;GraphicsContext3D&gt; GraphicsContext3D::create(GraphicsContext3D::Attributes attributes, HostWindow* hostWindow, GraphicsContext3D::RenderStyle renderStyle)
</ins><span class="cx"> {
</span><span class="cx">     // This implementation doesn't currently support rendering directly to the HostWindow.
</span><span class="cx">     if (renderStyle == RenderDirectlyToHostWindow)
</span><del>-        return 0;
</del><ins>+        return nullptr;
</ins><span class="cx"> 
</span><span class="cx">     static bool initialized = false;
</span><span class="cx">     static bool success = true;
</span><span class="lines">@@ -60,10 +60,9 @@
</span><span class="cx">         initialized = true;
</span><span class="cx">     }
</span><span class="cx">     if (!success)
</span><del>-        return 0;
</del><ins>+        return nullptr;
</ins><span class="cx"> 
</span><del>-    RefPtr&lt;GraphicsContext3D&gt; context = adoptRef(new GraphicsContext3D(attributes, hostWindow, renderStyle));
-    return context.release();
</del><ins>+    return adoptRef(new GraphicsContext3D(attributes, hostWindow, renderStyle));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> GraphicsContext3D::GraphicsContext3D(GraphicsContext3D::Attributes attributes, HostWindow*, GraphicsContext3D::RenderStyle renderStyle)
</span></span></pre>
</div>
</div>

</body>
</html>