From a8664df76bbfce47c54d20094d79aec683e24551 Mon Sep 17 00:00:00 2001 From: Tom Payne Date: Sun, 29 Jul 2012 14:17:25 +0200 Subject: [PATCH] Make ol.Map.isDef stricter --- src/ol/base/map.js | 11 ++++++----- src/ol/control/drag.js | 2 +- src/ol/dom/tilelayerrenderer.js | 2 +- src/ol/webgl/tilelayerrenderer.js | 1 + 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/ol/base/map.js b/src/ol/base/map.js index cab5f28005..59707b3920 100644 --- a/src/ol/base/map.js +++ b/src/ol/base/map.js @@ -671,8 +671,9 @@ ol.Map.prototype.handleViewportResize = function() { * @return {boolean} Is defined. */ ol.Map.prototype.isDef = function() { - return goog.isDef(this.getCenter()) && goog.isDef(this.getResolution()) && - goog.isDef(this.getSize()); + return goog.isDefAndNotNull(this.getCenter()) && + goog.isDef(this.getResolution()) && + goog.isDefAndNotNull(this.getSize()); }; @@ -845,10 +846,10 @@ ol.Map.prototype.updateMatrices_ = function() { if (this.matriciesDirty_) { - var center = /** @type {ol.Coordinate} */ this.getCenter(); + var center = /** @type {!ol.Coordinate} */ this.getCenter(); var resolution = /** @type {number} */ this.getResolution(); - var rotation = /** @type {number} */ this.getRotation(); - var size = /** @type {ol.Size} */ this.getSize(); + var rotation = this.getRotation(); + var size = /** @type {!ol.Size} */ this.getSize(); goog.vec.Mat4.makeIdentity(this.coordinateToPixelMatrix_); goog.vec.Mat4.translate(this.coordinateToPixelMatrix_, diff --git a/src/ol/control/drag.js b/src/ol/control/drag.js index c3eb1e0cfc..be8272c15b 100644 --- a/src/ol/control/drag.js +++ b/src/ol/control/drag.js @@ -108,7 +108,7 @@ ol.control.Drag.prototype.handleMapBrowserEvent = function(mapBrowserEvent) { this.startY = browserEvent.clientY; this.deltaX = 0; this.deltaY = 0; - this.startCenter = /** @type {ol.Coordinate} */ map.getCenter(); + this.startCenter = /** @type {!ol.Coordinate} */ map.getCenter(); this.startCoordinate = /** @type {ol.Coordinate} */ mapBrowserEvent.getCoordinate(); if (this.handleDragStart(mapBrowserEvent)) { diff --git a/src/ol/dom/tilelayerrenderer.js b/src/ol/dom/tilelayerrenderer.js index c4a8976df8..93bb8e805e 100644 --- a/src/ol/dom/tilelayerrenderer.js +++ b/src/ol/dom/tilelayerrenderer.js @@ -53,7 +53,7 @@ ol.dom.TileLayerRenderer.prototype.render = function() { if (!map.isDef()) { return; } - var mapExtent = /** @type {ol.Extent} */ map.getExtent(); + var mapExtent = /** @type {!ol.Extent} */ map.getExtent(); var mapResolution = /** @type {number} */ map.getResolution(); var tileLayer = this.getLayer(); diff --git a/src/ol/webgl/tilelayerrenderer.js b/src/ol/webgl/tilelayerrenderer.js index 23a3d29e77..dc148dedee 100644 --- a/src/ol/webgl/tilelayerrenderer.js +++ b/src/ol/webgl/tilelayerrenderer.js @@ -263,6 +263,7 @@ ol.webgl.TileLayerRenderer.prototype.render = function() { var gl = this.getGL(); var map = this.getMap(); + goog.asserts.assert(map.isDef()); var mapExtent = /** @type {!ol.Extent} */ map.getExtent(); var mapResolution = /** @type {number} */ map.getResolution(); var mapSize = map.getSize();