| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "modules/webgl/WebGL2RenderingContextBase.h" | 5 #include "modules/webgl/WebGL2RenderingContextBase.h" |
| 6 | 6 |
| 7 #include "bindings/modules/v8/WebGLAny.h" | 7 #include "bindings/modules/v8/WebGLAny.h" |
| 8 #include "core/dom/DOMException.h" | 8 #include "core/dom/DOMException.h" |
| 9 #include "core/frame/ImageBitmap.h" | 9 #include "core/frame/ImageBitmap.h" |
| 10 #include "core/html/HTMLCanvasElement.h" | 10 #include "core/html/HTMLCanvasElement.h" |
| (...skipping 1992 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2003 if (srcOffset > data->byteLength()) { | 2003 if (srcOffset > data->byteLength()) { |
| 2004 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage2D", | 2004 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage2D", |
| 2005 "srcOffset is out of range"); | 2005 "srcOffset is out of range"); |
| 2006 return; | 2006 return; |
| 2007 } | 2007 } |
| 2008 if (srcLengthOverride == 0) { | 2008 if (srcLengthOverride == 0) { |
| 2009 srcLengthOverride = data->byteLength() - srcOffset; | 2009 srcLengthOverride = data->byteLength() - srcOffset; |
| 2010 } else if (srcLengthOverride > data->byteLength() - srcOffset) { | 2010 } else if (srcLengthOverride > data->byteLength() - srcOffset) { |
| 2011 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage2D", | 2011 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage2D", |
| 2012 "srcLengthOverride is out of range"); | 2012 "srcLengthOverride is out of range"); |
| 2013 return; |
| 2013 } | 2014 } |
| 2014 contextGL()->CompressedTexImage2D( | 2015 contextGL()->CompressedTexImage2D( |
| 2015 target, level, internalformat, width, height, border, srcLengthOverride, | 2016 target, level, internalformat, width, height, border, srcLengthOverride, |
| 2016 static_cast<uint8_t*>(data->baseAddress()) + srcOffset); | 2017 static_cast<uint8_t*>(data->baseAddress()) + srcOffset); |
| 2017 } | 2018 } |
| 2018 | 2019 |
| 2019 void WebGL2RenderingContextBase::compressedTexSubImage2D( | 2020 void WebGL2RenderingContextBase::compressedTexSubImage2D( |
| 2020 GLenum target, | 2021 GLenum target, |
| 2021 GLint level, | 2022 GLint level, |
| 2022 GLint xoffset, | 2023 GLint xoffset, |
| (...skipping 26 matching lines...) Expand all Loading... |
| 2049 if (srcOffset > data->byteLength()) { | 2050 if (srcOffset > data->byteLength()) { |
| 2050 synthesizeGLError(GL_INVALID_VALUE, "compressedTexSubImage2D", | 2051 synthesizeGLError(GL_INVALID_VALUE, "compressedTexSubImage2D", |
| 2051 "srcOffset is out of range"); | 2052 "srcOffset is out of range"); |
| 2052 return; | 2053 return; |
| 2053 } | 2054 } |
| 2054 if (srcLengthOverride == 0) { | 2055 if (srcLengthOverride == 0) { |
| 2055 srcLengthOverride = data->byteLength() - srcOffset; | 2056 srcLengthOverride = data->byteLength() - srcOffset; |
| 2056 } else if (srcLengthOverride > data->byteLength() - srcOffset) { | 2057 } else if (srcLengthOverride > data->byteLength() - srcOffset) { |
| 2057 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage2D", | 2058 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage2D", |
| 2058 "srcLengthOverride is out of range"); | 2059 "srcLengthOverride is out of range"); |
| 2060 return; |
| 2059 } | 2061 } |
| 2060 contextGL()->CompressedTexSubImage2D( | 2062 contextGL()->CompressedTexSubImage2D( |
| 2061 target, level, xoffset, yoffset, width, height, format, srcLengthOverride, | 2063 target, level, xoffset, yoffset, width, height, format, srcLengthOverride, |
| 2062 static_cast<uint8_t*>(data->baseAddress()) + srcOffset); | 2064 static_cast<uint8_t*>(data->baseAddress()) + srcOffset); |
| 2063 } | 2065 } |
| 2064 | 2066 |
| 2065 void WebGL2RenderingContextBase::compressedTexImage3D( | 2067 void WebGL2RenderingContextBase::compressedTexImage3D( |
| 2066 GLenum target, | 2068 GLenum target, |
| 2067 GLint level, | 2069 GLint level, |
| 2068 GLenum internalformat, | 2070 GLenum internalformat, |
| (...skipping 13 matching lines...) Expand all Loading... |
| 2082 if (srcOffset > data->byteLength()) { | 2084 if (srcOffset > data->byteLength()) { |
| 2083 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage3D", | 2085 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage3D", |
| 2084 "srcOffset is out of range"); | 2086 "srcOffset is out of range"); |
| 2085 return; | 2087 return; |
| 2086 } | 2088 } |
| 2087 if (srcLengthOverride == 0) { | 2089 if (srcLengthOverride == 0) { |
| 2088 srcLengthOverride = data->byteLength() - srcOffset; | 2090 srcLengthOverride = data->byteLength() - srcOffset; |
| 2089 } else if (srcLengthOverride > data->byteLength() - srcOffset) { | 2091 } else if (srcLengthOverride > data->byteLength() - srcOffset) { |
| 2090 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage3D", | 2092 synthesizeGLError(GL_INVALID_VALUE, "compressedTexImage3D", |
| 2091 "srcLengthOverride is out of range"); | 2093 "srcLengthOverride is out of range"); |
| 2094 return; |
| 2092 } | 2095 } |
| 2093 contextGL()->CompressedTexImage3D( | 2096 contextGL()->CompressedTexImage3D( |
| 2094 target, level, internalformat, width, height, depth, border, | 2097 target, level, internalformat, width, height, depth, border, |
| 2095 srcLengthOverride, | 2098 srcLengthOverride, |
| 2096 static_cast<uint8_t*>(data->baseAddress()) + srcOffset); | 2099 static_cast<uint8_t*>(data->baseAddress()) + srcOffset); |
| 2097 } | 2100 } |
| 2098 | 2101 |
| 2099 void WebGL2RenderingContextBase::compressedTexSubImage3D( | 2102 void WebGL2RenderingContextBase::compressedTexSubImage3D( |
| 2100 GLenum target, | 2103 GLenum target, |
| 2101 GLint level, | 2104 GLint level, |
| (...skipping 16 matching lines...) Expand all Loading... |
| 2118 if (srcOffset > data->byteLength()) { | 2121 if (srcOffset > data->byteLength()) { |
| 2119 synthesizeGLError(GL_INVALID_VALUE, "compressedTexSubImage3D", | 2122 synthesizeGLError(GL_INVALID_VALUE, "compressedTexSubImage3D", |
| 2120 "srcOffset is out of range"); | 2123 "srcOffset is out of range"); |
| 2121 return; | 2124 return; |
| 2122 } | 2125 } |
| 2123 if (srcLengthOverride == 0) { | 2126 if (srcLengthOverride == 0) { |
| 2124 srcLengthOverride = data->byteLength() - srcOffset; | 2127 srcLengthOverride = data->byteLength() - srcOffset; |
| 2125 } else if (srcLengthOverride > data->byteLength() - srcOffset) { | 2128 } else if (srcLengthOverride > data->byteLength() - srcOffset) { |
| 2126 synthesizeGLError(GL_INVALID_VALUE, "compressedTexSubImage3D", | 2129 synthesizeGLError(GL_INVALID_VALUE, "compressedTexSubImage3D", |
| 2127 "srcLengthOverride is out of range"); | 2130 "srcLengthOverride is out of range"); |
| 2131 return; |
| 2128 } | 2132 } |
| 2129 contextGL()->CompressedTexSubImage3D( | 2133 contextGL()->CompressedTexSubImage3D( |
| 2130 target, level, xoffset, yoffset, zoffset, width, height, depth, format, | 2134 target, level, xoffset, yoffset, zoffset, width, height, depth, format, |
| 2131 srcLengthOverride, | 2135 srcLengthOverride, |
| 2132 static_cast<uint8_t*>(data->baseAddress()) + srcOffset); | 2136 static_cast<uint8_t*>(data->baseAddress()) + srcOffset); |
| 2133 } | 2137 } |
| 2134 | 2138 |
| 2135 GLint WebGL2RenderingContextBase::getFragDataLocation(WebGLProgram* program, | 2139 GLint WebGL2RenderingContextBase::getFragDataLocation(WebGLProgram* program, |
| 2136 const String& name) { | 2140 const String& name) { |
| 2137 if (isContextLost() || !validateWebGLObject("getFragDataLocation", program)) | 2141 if (isContextLost() || !validateWebGLObject("getFragDataLocation", program)) |
| (...skipping 2827 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4965 | 4969 |
| 4966 void WebGL2RenderingContextBase:: | 4970 void WebGL2RenderingContextBase:: |
| 4967 DrawingBufferClientRestorePixelUnpackBufferBinding() { | 4971 DrawingBufferClientRestorePixelUnpackBufferBinding() { |
| 4968 if (!contextGL()) | 4972 if (!contextGL()) |
| 4969 return; | 4973 return; |
| 4970 contextGL()->BindBuffer(GL_PIXEL_UNPACK_BUFFER, | 4974 contextGL()->BindBuffer(GL_PIXEL_UNPACK_BUFFER, |
| 4971 objectOrZero(m_boundPixelUnpackBuffer.get())); | 4975 objectOrZero(m_boundPixelUnpackBuffer.get())); |
| 4972 } | 4976 } |
| 4973 | 4977 |
| 4974 } // namespace blink | 4978 } // namespace blink |
| OLD | NEW |