Title: [170718] trunk/Source/WebCore
Revision
170718
Author
[email protected]
Date
2014-07-02 13:29:42 -0700 (Wed, 02 Jul 2014)

Log Message

[WebGL] Fix crash when glsl expressions are too complex.
https://bugs.webkit.org/show_bug.cgi?id=134554
<rdar://problem/17540462>

Reviewed by Dean Jackson.
        
This fixes the Khronos test conformance/glsl/bugs/long-expressions-should-not-crash.html.

* platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
(WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
Add SH_LIMIT_EXPRESSION_COMPLEXITY to the ANGLE compile options.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (170717 => 170718)


--- trunk/Source/WebCore/ChangeLog	2014-07-02 20:22:04 UTC (rev 170717)
+++ trunk/Source/WebCore/ChangeLog	2014-07-02 20:29:42 UTC (rev 170718)
@@ -1,3 +1,17 @@
+2014-07-02  Alex Christensen  <[email protected]>
+
+        [WebGL] Fix crash when glsl expressions are too complex.
+        https://bugs.webkit.org/show_bug.cgi?id=134554
+        <rdar://problem/17540462>
+
+        Reviewed by Dean Jackson.
+        
+        This fixes the Khronos test conformance/glsl/bugs/long-expressions-should-not-crash.html.
+
+        * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
+        (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
+        Add SH_LIMIT_EXPRESSION_COMPLEXITY to the ANGLE compile options.
+
 2014-07-02  Benjamin Poulain  <[email protected]>
 
         WebCore JIT: rename registerCount to something less generic and add new types for lists of registers and lists of stack references

Modified: trunk/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp (170717 => 170718)


--- trunk/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp	2014-07-02 20:22:04 UTC (rev 170717)
+++ trunk/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp	2014-07-02 20:29:42 UTC (rev 170718)
@@ -187,7 +187,7 @@
 
     String translatedShaderSource;
     String shaderInfoLog;
-    int extraCompileOptions = SH_CLAMP_INDIRECT_ARRAY_BOUNDS | SH_UNFOLD_SHORT_CIRCUIT | SH_ENFORCE_PACKING_RESTRICTIONS | SH_INIT_VARYINGS_WITHOUT_STATIC_USE;
+    int extraCompileOptions = SH_CLAMP_INDIRECT_ARRAY_BOUNDS | SH_UNFOLD_SHORT_CIRCUIT | SH_ENFORCE_PACKING_RESTRICTIONS | SH_INIT_VARYINGS_WITHOUT_STATIC_USE | SH_LIMIT_EXPRESSION_COMPLEXITY;
 
     if (m_requiresBuiltInFunctionEmulation)
         extraCompileOptions |= SH_EMULATE_BUILT_IN_FUNCTIONS;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to