Changeset 270160 in webkit


Ignore:
Timestamp:
Nov 22, 2020 12:30:16 AM (20 months ago)
Author:
commit-queue@webkit.org
Message:

Fix getIndexedParameter indexing crash
https://bugs.webkit.org/show_bug.cgi?id=218601

Patch by Rob Buis <rbuis@igalia.com> on 2020-11-22
Reviewed by Ryosuke Niwa.

Source/WebCore:

Like in setBoundIndexedTransformFeedbackBuffer ASSERT, the index should
always be smaller than size for indexing to be safe, so bail if the index
is greater than or equal to size.

  • html/canvas/WebGLTransformFeedback.cpp:

(WebCore::WebGLTransformFeedback::getBoundIndexedTransformFeedbackBuffer):

LayoutTests:

Add testcase.

  • fast/canvas/webgl/getIndexedParameter-crash-expected.txt: Added.
  • fast/canvas/webgl/getIndexedParameter-crash.html: Added.
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r270158 r270160  
     12020-11-22  Rob Buis  <rbuis@igalia.com>
     2
     3        Fix getIndexedParameter indexing crash
     4        https://bugs.webkit.org/show_bug.cgi?id=218601
     5
     6        Reviewed by Ryosuke Niwa.
     7
     8        Add testcase.
     9
     10        * fast/canvas/webgl/getIndexedParameter-crash-expected.txt: Added.
     11        * fast/canvas/webgl/getIndexedParameter-crash.html: Added.
     12
    1132020-11-21  Sihui Liu  <sihui_liu@apple.com>
    214
  • trunk/Source/WebCore/ChangeLog

    r270159 r270160  
     12020-11-22  Rob Buis  <rbuis@igalia.com>
     2
     3        Fix getIndexedParameter indexing crash
     4        https://bugs.webkit.org/show_bug.cgi?id=218601
     5
     6        Reviewed by Ryosuke Niwa.
     7
     8        Like in setBoundIndexedTransformFeedbackBuffer ASSERT, the index should
     9        always be smaller than size for indexing to be safe, so bail if the index
     10        is greater than or equal to size.
     11
     12        * html/canvas/WebGLTransformFeedback.cpp:
     13        (WebCore::WebGLTransformFeedback::getBoundIndexedTransformFeedbackBuffer):
     14
    1152020-11-21  Ada Chan  <adachan@apple.com>
    216
  • trunk/Source/WebCore/html/canvas/WebGLTransformFeedback.cpp

    r269850 r270160  
    7777bool WebGLTransformFeedback::getBoundIndexedTransformFeedbackBuffer(GCGLuint index, WebGLBuffer** outBuffer)
    7878{
    79     if (index > m_boundIndexedTransformFeedbackBuffers.size())
     79    if (index >= m_boundIndexedTransformFeedbackBuffers.size())
    8080        return false;
    8181    *outBuffer = m_boundIndexedTransformFeedbackBuffers[index].get();
Note: See TracChangeset for help on using the changeset viewer.