| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // A class to emulate GLES2 over command buffers. | 5 // A class to emulate GLES2 over command buffers. |
| 6 | 6 |
| 7 #include "gpu/command_buffer/client/gles2_implementation.h" | 7 #include "gpu/command_buffer/client/gles2_implementation.h" |
| 8 | 8 |
| 9 #include <GLES2/gl2.h> | 9 #include <GLES2/gl2.h> |
| 10 #include <GLES2/gl2ext.h> | 10 #include <GLES2/gl2ext.h> |
| (...skipping 6309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6320 // TODO(zmo): Implement client side caching. | 6320 // TODO(zmo): Implement client side caching. |
| 6321 return false; | 6321 return false; |
| 6322 } | 6322 } |
| 6323 | 6323 |
| 6324 bool GLES2Implementation::PackStringsToBucket(GLsizei count, | 6324 bool GLES2Implementation::PackStringsToBucket(GLsizei count, |
| 6325 const char* const* str, | 6325 const char* const* str, |
| 6326 const GLint* length, | 6326 const GLint* length, |
| 6327 const char* func_name) { | 6327 const char* func_name) { |
| 6328 DCHECK_LE(0, count); | 6328 DCHECK_LE(0, count); |
| 6329 // Compute the total size. | 6329 // Compute the total size. |
| 6330 base::CheckedNumeric<size_t> total_size = count; | 6330 base::CheckedNumeric<uint32_t> total_size = count; |
| 6331 total_size += 1; | 6331 total_size += 1; |
| 6332 total_size *= sizeof(GLint); | 6332 total_size *= sizeof(GLint); |
| 6333 if (!total_size.IsValid()) { | 6333 if (!total_size.IsValid()) { |
| 6334 SetGLError(GL_INVALID_VALUE, func_name, "overflow"); | 6334 SetGLError(GL_INVALID_VALUE, func_name, "overflow"); |
| 6335 return false; | 6335 return false; |
| 6336 } | 6336 } |
| 6337 size_t header_size = total_size.ValueOrDefault(0); | 6337 size_t header_size = total_size.ValueOrDefault(0); |
| 6338 std::vector<GLint> header(count + 1); | 6338 std::vector<GLint> header(count + 1); |
| 6339 header[0] = static_cast<GLint>(count); | 6339 header[0] = static_cast<GLint>(count); |
| 6340 for (GLsizei ii = 0; ii < count; ++ii) { | 6340 for (GLsizei ii = 0; ii < count; ++ii) { |
| (...skipping 689 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7030 cached_extensions_.clear(); | 7030 cached_extensions_.clear(); |
| 7031 } | 7031 } |
| 7032 | 7032 |
| 7033 // Include the auto-generated part of this file. We split this because it means | 7033 // Include the auto-generated part of this file. We split this because it means |
| 7034 // we can easily edit the non-auto generated parts right here in this file | 7034 // we can easily edit the non-auto generated parts right here in this file |
| 7035 // instead of having to edit some template or the code generator. | 7035 // instead of having to edit some template or the code generator. |
| 7036 #include "gpu/command_buffer/client/gles2_implementation_impl_autogen.h" | 7036 #include "gpu/command_buffer/client/gles2_implementation_impl_autogen.h" |
| 7037 | 7037 |
| 7038 } // namespace gles2 | 7038 } // namespace gles2 |
| 7039 } // namespace gpu | 7039 } // namespace gpu |
| OLD | NEW |