[webkit-changes] [WebKit/WebKit] 40438e: WebGLRenderingContextBase::readPixels should early...

Kimmo Kinnunen noreply at github.com
Wed Oct 5 05:31:13 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 40438efc37ff8bdac5deacad93630826b8d0cb63
      https://github.com/WebKit/WebKit/commit/40438efc37ff8bdac5deacad93630826b8d0cb63
  Author: Kimmo Kinnunen <kkinnunen at apple.com>
  Date:   2022-10-05 (Wed, 05 Oct 2022)

  Changed paths:
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.h

  Log Message:
  -----------
  WebGLRenderingContextBase::readPixels should early reject FLOAT_32_UNSIGNED_INT_24_8_REV type
https://bugs.webkit.org/show_bug.cgi?id=244290
rdar://problem/99081375

Reviewed by Kenneth Russell.

Rename validateArrayBufferType to validateTypeAndArrayBufferType to better
reflect what the function does.

Add validation for type == FLOAT_32_UNSIGNED_INT_24_8_REV for read pixels.
It should always fail with INVALID_ENUM, regardless whether pixels are passed or not.

For texImage functions, the type != null case produces INVALID_OPERATION.

Tested by:
webgl/2.0.y/conformance/programs/program-test.html

TestExpectations is not yet changed as the test result is
Pass/Fail and currently another hunk of the test fails.

* Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::readPixels):
(WebCore::WebGLRenderingContextBase::validateTypeAndArrayBufferType):
(WebCore::WebGLRenderingContextBase::validateTexFuncData):
WebCore::WebGLRenderingContextBase::validateArrayBufferType): Deleted.
* Source/WebCore/html/canvas/WebGLRenderingContextBase.h:

Canonical link: https://commits.webkit.org/255165@main




More information about the webkit-changes mailing list