From 7144e7ad0b453642376d7635e8bdbfeb35aa7bcd Mon Sep 17 00:00:00 2001 From: Tom Payne Date: Sat, 28 Jul 2012 16:01:38 +0200 Subject: [PATCH] Use Closure logging infrastructure for WebGL errors --- src/ol/webgl/map.js | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/src/ol/webgl/map.js b/src/ol/webgl/map.js index f113e4eed1..066c8ad3fd 100644 --- a/src/ol/webgl/map.js +++ b/src/ol/webgl/map.js @@ -7,6 +7,7 @@ goog.provide('ol.webgl.Map'); goog.provide('ol.webgl.map.shader'); +goog.require('goog.debug.Logger'); goog.require('goog.dispose'); goog.require('goog.dom'); goog.require('goog.dom.TagName'); @@ -24,6 +25,14 @@ goog.require('ol.webgl.shader.Fragment'); goog.require('ol.webgl.shader.Vertex'); +if (goog.DEBUG) { + /** + * @type {goog.debug.Logger} + */ + ol.webgl.map.logger = goog.debug.Logger.getLogger('ol.webgl.map'); +} + + /** * @constructor @@ -286,11 +295,13 @@ ol.webgl.Map.prototype.getProgram = function( gl.attachShader(program, this.getShader(fragmentShaderObject)); gl.attachShader(program, this.getShader(vertexShaderObject)); gl.linkProgram(program); - if (!gl.getProgramParameter(program, goog.webgl.LINK_STATUS) && - !gl.isContextLost()) { - window.console.log(gl.getProgramInfoLog(program)); - goog.asserts.assert( - gl.getProgramParameter(program, goog.webgl.LINK_STATUS)); + if (goog.DEBUG) { + if (!gl.getProgramParameter(program, goog.webgl.LINK_STATUS) && + !gl.isContextLost()) { + ol.webgl.map.logger.severe(gl.getProgramInfoLog(program)); + goog.asserts.assert( + gl.getProgramParameter(program, goog.webgl.LINK_STATUS)); + } } this.programCache_[key] = program; return program; @@ -311,11 +322,13 @@ ol.webgl.Map.prototype.getShader = function(shaderObject) { var shader = gl.createShader(shaderObject.getType()); gl.shaderSource(shader, shaderObject.getSource()); gl.compileShader(shader); - if (!gl.getShaderParameter(shader, goog.webgl.COMPILE_STATUS) && - !gl.isContextLost()) { - window.console.log(gl.getShaderInfoLog(shader)); - goog.asserts.assert( - gl.getShaderParameter(shader, goog.webgl.COMPILE_STATUS)); + if (goog.DEBUG) { + if (!gl.getShaderParameter(shader, goog.webgl.COMPILE_STATUS) && + !gl.isContextLost()) { + ol.webgl.map.logger.severe(gl.getShaderInfoLog(shader)); + goog.asserts.assert( + gl.getShaderParameter(shader, goog.webgl.COMPILE_STATUS)); + } } this.shaderCache_[key] = shader; return shader;