Chromium Code Reviews

Side by Side Diff: chrome/renderer/webgraphicscontext3d_command_buffer_impl.cc

Issue 5254006: Initialize destinations variables before calling GL functions... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | | Annotate | Revision Log
« no previous file with comments | « chrome/gpu/gpu_info_collector_mac.mm ('k') | gpu/command_buffer/build_gles2_cmd_buffer.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #if defined(ENABLE_GPU) 5 #if defined(ENABLE_GPU)
6 6
7 #include "chrome/renderer/webgraphicscontext3d_command_buffer_impl.h" 7 #include "chrome/renderer/webgraphicscontext3d_command_buffer_impl.h"
8 8
9 #include <GLES2/gl2.h> 9 #include <GLES2/gl2.h>
10 #ifndef GL_GLEXT_PROTOTYPES 10 #ifndef GL_GLEXT_PROTOTYPES
(...skipping 690 matching lines...)
701 WebKit::WebString WebGraphicsContext3DCommandBufferImpl::getProgramInfoLog( 701 WebKit::WebString WebGraphicsContext3DCommandBufferImpl::getProgramInfoLog(
702 WebGLId program) { 702 WebGLId program) {
703 makeContextCurrent(); 703 makeContextCurrent();
704 GLint logLength = 0; 704 GLint logLength = 0;
705 glGetProgramiv(program, GL_INFO_LOG_LENGTH, &logLength); 705 glGetProgramiv(program, GL_INFO_LOG_LENGTH, &logLength);
706 if (!logLength) 706 if (!logLength)
707 return WebKit::WebString(); 707 return WebKit::WebString();
708 scoped_array<GLchar> log(new GLchar[logLength]); 708 scoped_array<GLchar> log(new GLchar[logLength]);
709 if (!log.get()) 709 if (!log.get())
710 return WebKit::WebString(); 710 return WebKit::WebString();
711 GLsizei returnedLogLength; 711 GLsizei returnedLogLength = 0;
712 glGetProgramInfoLog(program, logLength, &returnedLogLength, log.get()); 712 glGetProgramInfoLog(program, logLength, &returnedLogLength, log.get());
713 DCHECK_EQ(logLength, returnedLogLength + 1); 713 DCHECK_EQ(logLength, returnedLogLength + 1);
714 WebKit::WebString res = 714 WebKit::WebString res =
715 WebKit::WebString::fromUTF8(log.get(), returnedLogLength); 715 WebKit::WebString::fromUTF8(log.get(), returnedLogLength);
716 return res; 716 return res;
717 } 717 }
718 718
719 DELEGATE_TO_GL_3(getRenderbufferParameteriv, GetRenderbufferParameteriv, 719 DELEGATE_TO_GL_3(getRenderbufferParameteriv, GetRenderbufferParameteriv,
720 unsigned long, unsigned long, int*) 720 unsigned long, unsigned long, int*)
721 721
722 DELEGATE_TO_GL_3(getShaderiv, GetShaderiv, WebGLId, unsigned long, int*) 722 DELEGATE_TO_GL_3(getShaderiv, GetShaderiv, WebGLId, unsigned long, int*)
723 723
724 WebKit::WebString WebGraphicsContext3DCommandBufferImpl::getShaderInfoLog( 724 WebKit::WebString WebGraphicsContext3DCommandBufferImpl::getShaderInfoLog(
725 WebGLId shader) { 725 WebGLId shader) {
726 makeContextCurrent(); 726 makeContextCurrent();
727 GLint logLength = 0; 727 GLint logLength = 0;
728 glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &logLength); 728 glGetShaderiv(shader, GL_INFO_LOG_LENGTH, &logLength);
729 if (!logLength) 729 if (!logLength)
730 return WebKit::WebString(); 730 return WebKit::WebString();
731 scoped_array<GLchar> log(new GLchar[logLength]); 731 scoped_array<GLchar> log(new GLchar[logLength]);
732 if (!log.get()) 732 if (!log.get())
733 return WebKit::WebString(); 733 return WebKit::WebString();
734 GLsizei returnedLogLength; 734 GLsizei returnedLogLength = 0;
735 glGetShaderInfoLog(shader, logLength, &returnedLogLength, log.get()); 735 glGetShaderInfoLog(shader, logLength, &returnedLogLength, log.get());
736 DCHECK_EQ(logLength, returnedLogLength + 1); 736 DCHECK_EQ(logLength, returnedLogLength + 1);
737 WebKit::WebString res = 737 WebKit::WebString res =
738 WebKit::WebString::fromUTF8(log.get(), returnedLogLength); 738 WebKit::WebString::fromUTF8(log.get(), returnedLogLength);
739 return res; 739 return res;
740 } 740 }
741 741
742 WebKit::WebString WebGraphicsContext3DCommandBufferImpl::getShaderSource( 742 WebKit::WebString WebGraphicsContext3DCommandBufferImpl::getShaderSource(
743 WebGLId shader) { 743 WebGLId shader) {
744 makeContextCurrent(); 744 makeContextCurrent();
745 GLint logLength = 0; 745 GLint logLength = 0;
746 glGetShaderiv(shader, GL_SHADER_SOURCE_LENGTH, &logLength); 746 glGetShaderiv(shader, GL_SHADER_SOURCE_LENGTH, &logLength);
747 if (!logLength) 747 if (!logLength)
748 return WebKit::WebString(); 748 return WebKit::WebString();
749 scoped_array<GLchar> log(new GLchar[logLength]); 749 scoped_array<GLchar> log(new GLchar[logLength]);
750 if (!log.get()) 750 if (!log.get())
751 return WebKit::WebString(); 751 return WebKit::WebString();
752 GLsizei returnedLogLength; 752 GLsizei returnedLogLength = 0;
753 glGetShaderSource(shader, logLength, &returnedLogLength, log.get()); 753 glGetShaderSource(shader, logLength, &returnedLogLength, log.get());
754 DCHECK_EQ(logLength, returnedLogLength + 1); 754 DCHECK_EQ(logLength, returnedLogLength + 1);
755 WebKit::WebString res = 755 WebKit::WebString res =
756 WebKit::WebString::fromUTF8(log.get(), returnedLogLength); 756 WebKit::WebString::fromUTF8(log.get(), returnedLogLength);
757 return res; 757 return res;
758 } 758 }
759 759
760 WebKit::WebString WebGraphicsContext3DCommandBufferImpl::getString( 760 WebKit::WebString WebGraphicsContext3DCommandBufferImpl::getString(
761 unsigned long name) { 761 unsigned long name) {
762 makeContextCurrent(); 762 makeContextCurrent();
(...skipping 259 matching lines...)
1022 } 1022 }
1023 1023
1024 void WebGraphicsContext3DCommandBufferImpl::copyTextureToCompositor( 1024 void WebGraphicsContext3DCommandBufferImpl::copyTextureToCompositor(
1025 unsigned texture, unsigned parentTexture) { 1025 unsigned texture, unsigned parentTexture) {
1026 makeContextCurrent(); 1026 makeContextCurrent();
1027 glCopyTextureToParentTextureCHROMIUM(texture, parentTexture); 1027 glCopyTextureToParentTextureCHROMIUM(texture, parentTexture);
1028 glFlush(); 1028 glFlush();
1029 } 1029 }
1030 1030
1031 #endif // defined(ENABLE_GPU) 1031 #endif // defined(ENABLE_GPU)
OLDNEW
« no previous file with comments | « chrome/gpu/gpu_info_collector_mac.mm ('k') | gpu/command_buffer/build_gles2_cmd_buffer.py » ('j') | no next file with comments »

Powered by Google App Engine