Changeset 221971 in webkit


Ignore:
Timestamp:
Sep 13, 2017 9:03:10 AM (7 years ago)
Author:
commit-queue@webkit.org
Message:

Make WebGLRenderingContextBase::TypedList::data() const-correct.
https://bugs.webkit.org/show_bug.cgi?id=176833

Patch by Ms2ger <Ms2ger@igalia.com> on 2017-09-13
Reviewed by Sam Weinig.

No change of behavior.

  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::validateUniformMatrixParameters):

  • html/canvas/WebGLRenderingContextBase.h:

(WebCore::WebGLRenderingContextBase::TypedList::data const):

  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::uniform1fv):
(WebCore::GraphicsContext3D::uniform2fv):
(WebCore::GraphicsContext3D::uniform3fv):
(WebCore::GraphicsContext3D::uniform4fv):
(WebCore::GraphicsContext3D::uniform1iv):
(WebCore::GraphicsContext3D::uniform2iv):
(WebCore::GraphicsContext3D::uniform3iv):
(WebCore::GraphicsContext3D::uniform4iv):
(WebCore::GraphicsContext3D::uniformMatrix2fv):
(WebCore::GraphicsContext3D::uniformMatrix3fv):
(WebCore::GraphicsContext3D::uniformMatrix4fv):
(WebCore::GraphicsContext3D::vertexAttrib1fv):
(WebCore::GraphicsContext3D::vertexAttrib2fv):
(WebCore::GraphicsContext3D::vertexAttrib3fv):
(WebCore::GraphicsContext3D::vertexAttrib4fv):

Location:
trunk/Source/WebCore
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r221969 r221971  
     12017-09-13  Ms2ger  <Ms2ger@igalia.com>
     2
     3        Make WebGLRenderingContextBase::TypedList::data() const-correct.
     4        https://bugs.webkit.org/show_bug.cgi?id=176833
     5
     6        Reviewed by Sam Weinig.
     7
     8        No change of behavior.
     9
     10        * html/canvas/WebGLRenderingContextBase.cpp:
     11        (WebCore::WebGLRenderingContextBase::validateUniformMatrixParameters):
     12        * html/canvas/WebGLRenderingContextBase.h:
     13        (WebCore::WebGLRenderingContextBase::TypedList::data const):
     14        * platform/graphics/GraphicsContext3D.h:
     15        * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
     16        (WebCore::GraphicsContext3D::uniform1fv):
     17        (WebCore::GraphicsContext3D::uniform2fv):
     18        (WebCore::GraphicsContext3D::uniform3fv):
     19        (WebCore::GraphicsContext3D::uniform4fv):
     20        (WebCore::GraphicsContext3D::uniform1iv):
     21        (WebCore::GraphicsContext3D::uniform2iv):
     22        (WebCore::GraphicsContext3D::uniform3iv):
     23        (WebCore::GraphicsContext3D::uniform4iv):
     24        (WebCore::GraphicsContext3D::uniformMatrix2fv):
     25        (WebCore::GraphicsContext3D::uniformMatrix3fv):
     26        (WebCore::GraphicsContext3D::uniformMatrix4fv):
     27        (WebCore::GraphicsContext3D::vertexAttrib1fv):
     28        (WebCore::GraphicsContext3D::vertexAttrib2fv):
     29        (WebCore::GraphicsContext3D::vertexAttrib3fv):
     30        (WebCore::GraphicsContext3D::vertexAttrib4fv):
     31
    1322017-09-13  Sam Weinig  <sam@webkit.org>
    233
  • trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp

    r221025 r221971  
    53245324}
    53255325
    5326 bool WebGLRenderingContextBase::validateUniformMatrixParameters(const char* functionName, const WebGLUniformLocation* location, GC3Dboolean transpose, void* v, GC3Dsizei size, GC3Dsizei requiredMinSize)
     5326bool WebGLRenderingContextBase::validateUniformMatrixParameters(const char* functionName, const WebGLUniformLocation* location, GC3Dboolean transpose, const void* v, GC3Dsizei size, GC3Dsizei requiredMinSize)
    53275327{
    53285328    if (!location)
  • trunk/Source/WebCore/html/canvas/WebGLRenderingContextBase.h

    r220436 r221971  
    271271        }
    272272
    273         DataType* data() const
     273        const DataType* data() const
    274274        {
    275275            return WTF::switchOn(m_variant,
    276                 [] (const RefPtr<TypedArray>& typedArray) -> DataType* { return typedArray->data(); },
    277                 [] (const Vector<DataType>& vector) -> DataType* { return const_cast<Vector<DataType>&>(vector).data(); }
     276                [] (const RefPtr<TypedArray>& typedArray) -> const DataType* { return typedArray->data(); },
     277                [] (const Vector<DataType>& vector) -> const DataType* { return vector.data(); }
    278278            );
    279279        }
     
    781781    bool validateUniformParameters(const char* functionName, const WebGLUniformLocation*, void*, GC3Dsizei, GC3Dsizei mod);
    782782    bool validateUniformMatrixParameters(const char* functionName, const WebGLUniformLocation*, GC3Dboolean transpose, const Float32List&, GC3Dsizei mod);
    783     bool validateUniformMatrixParameters(const char* functionName, const WebGLUniformLocation*, GC3Dboolean transpose, void*, GC3Dsizei, GC3Dsizei mod);
     783    bool validateUniformMatrixParameters(const char* functionName, const WebGLUniformLocation*, GC3Dboolean transpose, const void*, GC3Dsizei, GC3Dsizei mod);
    784784
    785785    // Helper function to validate parameters for bufferData.
  • trunk/Source/WebCore/platform/graphics/GraphicsContext3D.h

    r221932 r221971  
    10791079
    10801080    void uniform1f(GC3Dint location, GC3Dfloat x);
    1081     void uniform1fv(GC3Dint location, GC3Dsizei, GC3Dfloat* v);
     1081    void uniform1fv(GC3Dint location, GC3Dsizei, const GC3Dfloat* v);
    10821082    void uniform1i(GC3Dint location, GC3Dint x);
    1083     void uniform1iv(GC3Dint location, GC3Dsizei, GC3Dint* v);
     1083    void uniform1iv(GC3Dint location, GC3Dsizei, const GC3Dint* v);
    10841084    void uniform2f(GC3Dint location, GC3Dfloat x, GC3Dfloat y);
    1085     void uniform2fv(GC3Dint location, GC3Dsizei, GC3Dfloat* v);
     1085    void uniform2fv(GC3Dint location, GC3Dsizei, const GC3Dfloat* v);
    10861086    void uniform2i(GC3Dint location, GC3Dint x, GC3Dint y);
    1087     void uniform2iv(GC3Dint location, GC3Dsizei, GC3Dint* v);
     1087    void uniform2iv(GC3Dint location, GC3Dsizei, const GC3Dint* v);
    10881088    void uniform3f(GC3Dint location, GC3Dfloat x, GC3Dfloat y, GC3Dfloat z);
    1089     void uniform3fv(GC3Dint location, GC3Dsizei, GC3Dfloat* v);
     1089    void uniform3fv(GC3Dint location, GC3Dsizei, const GC3Dfloat* v);
    10901090    void uniform3i(GC3Dint location, GC3Dint x, GC3Dint y, GC3Dint z);
    1091     void uniform3iv(GC3Dint location, GC3Dsizei, GC3Dint* v);
     1091    void uniform3iv(GC3Dint location, GC3Dsizei, const GC3Dint* v);
    10921092    void uniform4f(GC3Dint location, GC3Dfloat x, GC3Dfloat y, GC3Dfloat z, GC3Dfloat w);
    1093     void uniform4fv(GC3Dint location, GC3Dsizei, GC3Dfloat* v);
     1093    void uniform4fv(GC3Dint location, GC3Dsizei, const GC3Dfloat* v);
    10941094    void uniform4i(GC3Dint location, GC3Dint x, GC3Dint y, GC3Dint z, GC3Dint w);
    1095     void uniform4iv(GC3Dint location, GC3Dsizei, GC3Dint* v);
    1096     void uniformMatrix2fv(GC3Dint location, GC3Dsizei, GC3Dboolean transpose, GC3Dfloat* value);
    1097     void uniformMatrix3fv(GC3Dint location, GC3Dsizei, GC3Dboolean transpose, GC3Dfloat* value);
    1098     void uniformMatrix4fv(GC3Dint location, GC3Dsizei, GC3Dboolean transpose, GC3Dfloat* value);
     1095    void uniform4iv(GC3Dint location, GC3Dsizei, const GC3Dint* v);
     1096    void uniformMatrix2fv(GC3Dint location, GC3Dsizei, GC3Dboolean transpose, const GC3Dfloat* value);
     1097    void uniformMatrix3fv(GC3Dint location, GC3Dsizei, GC3Dboolean transpose, const GC3Dfloat* value);
     1098    void uniformMatrix4fv(GC3Dint location, GC3Dsizei, GC3Dboolean transpose, const GC3Dfloat* value);
    10991099
    11001100    void useProgram(Platform3DObject);
     
    11041104
    11051105    void vertexAttrib1f(GC3Duint index, GC3Dfloat x);
    1106     void vertexAttrib1fv(GC3Duint index, GC3Dfloat* values);
     1106    void vertexAttrib1fv(GC3Duint index, const GC3Dfloat* values);
    11071107    void vertexAttrib2f(GC3Duint index, GC3Dfloat x, GC3Dfloat y);
    1108     void vertexAttrib2fv(GC3Duint index, GC3Dfloat* values);
     1108    void vertexAttrib2fv(GC3Duint index, const GC3Dfloat* values);
    11091109    void vertexAttrib3f(GC3Duint index, GC3Dfloat x, GC3Dfloat y, GC3Dfloat z);
    1110     void vertexAttrib3fv(GC3Duint index, GC3Dfloat* values);
     1110    void vertexAttrib3fv(GC3Duint index, const GC3Dfloat* values);
    11111111    void vertexAttrib4f(GC3Duint index, GC3Dfloat x, GC3Dfloat y, GC3Dfloat z, GC3Dfloat w);
    1112     void vertexAttrib4fv(GC3Duint index, GC3Dfloat* values);
     1112    void vertexAttrib4fv(GC3Duint index, const GC3Dfloat* values);
    11131113    void vertexAttribPointer(GC3Duint index, GC3Dint size, GC3Denum type, GC3Dboolean normalized,
    11141114                             GC3Dsizei stride, GC3Dintptr offset);
  • trunk/Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp

    r221932 r221971  
    13361336}
    13371337
    1338 void GraphicsContext3D::uniform1fv(GC3Dint location, GC3Dsizei size, GC3Dfloat* array)
     1338void GraphicsContext3D::uniform1fv(GC3Dint location, GC3Dsizei size, const GC3Dfloat* array)
    13391339{
    13401340    makeContextCurrent();
     
    13481348}
    13491349
    1350 void GraphicsContext3D::uniform2fv(GC3Dint location, GC3Dsizei size, GC3Dfloat* array)
     1350void GraphicsContext3D::uniform2fv(GC3Dint location, GC3Dsizei size, const GC3Dfloat* array)
    13511351{
    13521352    // FIXME: length needs to be a multiple of 2.
     
    13611361}
    13621362
    1363 void GraphicsContext3D::uniform3fv(GC3Dint location, GC3Dsizei size, GC3Dfloat* array)
     1363void GraphicsContext3D::uniform3fv(GC3Dint location, GC3Dsizei size, const GC3Dfloat* array)
    13641364{
    13651365    // FIXME: length needs to be a multiple of 3.
     
    13741374}
    13751375
    1376 void GraphicsContext3D::uniform4fv(GC3Dint location, GC3Dsizei size, GC3Dfloat* array)
     1376void GraphicsContext3D::uniform4fv(GC3Dint location, GC3Dsizei size, const GC3Dfloat* array)
    13771377{
    13781378    // FIXME: length needs to be a multiple of 4.
     
    13871387}
    13881388
    1389 void GraphicsContext3D::uniform1iv(GC3Dint location, GC3Dsizei size, GC3Dint* array)
     1389void GraphicsContext3D::uniform1iv(GC3Dint location, GC3Dsizei size, const GC3Dint* array)
    13901390{
    13911391    makeContextCurrent();
     
    13991399}
    14001400
    1401 void GraphicsContext3D::uniform2iv(GC3Dint location, GC3Dsizei size, GC3Dint* array)
     1401void GraphicsContext3D::uniform2iv(GC3Dint location, GC3Dsizei size, const GC3Dint* array)
    14021402{
    14031403    // FIXME: length needs to be a multiple of 2.
     
    14121412}
    14131413
    1414 void GraphicsContext3D::uniform3iv(GC3Dint location, GC3Dsizei size, GC3Dint* array)
     1414void GraphicsContext3D::uniform3iv(GC3Dint location, GC3Dsizei size, const GC3Dint* array)
    14151415{
    14161416    // FIXME: length needs to be a multiple of 3.
     
    14251425}
    14261426
    1427 void GraphicsContext3D::uniform4iv(GC3Dint location, GC3Dsizei size, GC3Dint* array)
     1427void GraphicsContext3D::uniform4iv(GC3Dint location, GC3Dsizei size, const GC3Dint* array)
    14281428{
    14291429    // FIXME: length needs to be a multiple of 4.
     
    14321432}
    14331433
    1434 void GraphicsContext3D::uniformMatrix2fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, GC3Dfloat* array)
     1434void GraphicsContext3D::uniformMatrix2fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, const GC3Dfloat* array)
    14351435{
    14361436    // FIXME: length needs to be a multiple of 4.
     
    14391439}
    14401440
    1441 void GraphicsContext3D::uniformMatrix3fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, GC3Dfloat* array)
     1441void GraphicsContext3D::uniformMatrix3fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, const GC3Dfloat* array)
    14421442{
    14431443    // FIXME: length needs to be a multiple of 9.
     
    14461446}
    14471447
    1448 void GraphicsContext3D::uniformMatrix4fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, GC3Dfloat* array)
     1448void GraphicsContext3D::uniformMatrix4fv(GC3Dint location, GC3Dsizei size, GC3Dboolean transpose, const GC3Dfloat* array)
    14491449{
    14501450    // FIXME: length needs to be a multiple of 16.
     
    14731473}
    14741474
    1475 void GraphicsContext3D::vertexAttrib1fv(GC3Duint index, GC3Dfloat* array)
     1475void GraphicsContext3D::vertexAttrib1fv(GC3Duint index, const GC3Dfloat* array)
    14761476{
    14771477    makeContextCurrent();
     
    14851485}
    14861486
    1487 void GraphicsContext3D::vertexAttrib2fv(GC3Duint index, GC3Dfloat* array)
     1487void GraphicsContext3D::vertexAttrib2fv(GC3Duint index, const GC3Dfloat* array)
    14881488{
    14891489    makeContextCurrent();
     
    14971497}
    14981498
    1499 void GraphicsContext3D::vertexAttrib3fv(GC3Duint index, GC3Dfloat* array)
     1499void GraphicsContext3D::vertexAttrib3fv(GC3Duint index, const GC3Dfloat* array)
    15001500{
    15011501    makeContextCurrent();
     
    15091509}
    15101510
    1511 void GraphicsContext3D::vertexAttrib4fv(GC3Duint index, GC3Dfloat* array)
     1511void GraphicsContext3D::vertexAttrib4fv(GC3Duint index, const GC3Dfloat* array)
    15121512{
    15131513    makeContextCurrent();
Note: See TracChangeset for help on using the changeset viewer.