Deal with null images

This commit is contained in:
Éric Lemoine
2013-02-17 23:07:58 +01:00
parent be6c1a1a27
commit d713c9b8ed
3 changed files with 36 additions and 31 deletions
@@ -79,8 +79,8 @@ ol.renderer.canvas.ImageLayer.prototype.renderFrame =
var hints = frameState.viewHints; var hints = frameState.viewHints;
if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.PANNING]) { if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.PANNING]) {
image = imageSource.getImage( image = imageSource.getImage(frameState.extent, viewResolution);
frameState.extent, viewResolution); if (!goog.isNull(image)) {
var imageState = image.getState(); var imageState = image.getState();
if (imageState == ol.ImageState.IDLE) { if (imageState == ol.ImageState.IDLE) {
goog.events.listenOnce(image, goog.events.EventType.CHANGE, goog.events.listenOnce(image, goog.events.EventType.CHANGE,
@@ -90,6 +90,7 @@ ol.renderer.canvas.ImageLayer.prototype.renderFrame =
this.image_ = image; this.image_ = image;
} }
} }
}
if (!goog.isNull(this.image_)) { if (!goog.isNull(this.image_)) {
image = this.image_; image = this.image_;
@@ -68,6 +68,7 @@ ol.renderer.dom.ImageLayer.prototype.renderFrame =
if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.PANNING]) { if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.PANNING]) {
var image_ = imageSource.getImage(frameState.extent, viewResolution); var image_ = imageSource.getImage(frameState.extent, viewResolution);
if (!goog.isNull(image_)) {
var imageState = image_.getState(); var imageState = image_.getState();
if (imageState == ol.ImageState.IDLE) { if (imageState == ol.ImageState.IDLE) {
goog.events.listenOnce(image_, goog.events.EventType.CHANGE, goog.events.listenOnce(image_, goog.events.EventType.CHANGE,
@@ -77,6 +78,7 @@ ol.renderer.dom.ImageLayer.prototype.renderFrame =
image = image_; image = image_;
} }
} }
}
if (!goog.isNull(image)) { if (!goog.isNull(image)) {
var imageExtent = image.getExtent(); var imageExtent = image.getExtent();
@@ -161,6 +161,7 @@ ol.renderer.webgl.ImageLayer.prototype.renderFrame =
if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.PANNING]) { if (!hints[ol.ViewHint.ANIMATING] && !hints[ol.ViewHint.PANNING]) {
var image_ = imageSource.getImage(frameState.extent, viewResolution); var image_ = imageSource.getImage(frameState.extent, viewResolution);
if (!goog.isNull(image_)) {
var imageState = image_.getState(); var imageState = image_.getState();
if (imageState == ol.ImageState.IDLE) { if (imageState == ol.ImageState.IDLE) {
goog.events.listenOnce(image_, goog.events.EventType.CHANGE, goog.events.listenOnce(image_, goog.events.EventType.CHANGE,
@@ -179,6 +180,7 @@ ol.renderer.webgl.ImageLayer.prototype.renderFrame =
} }
} }
} }
}
if (!goog.isNull(image)) { if (!goog.isNull(image)) {
goog.asserts.assert(!goog.isNull(texture)); goog.asserts.assert(!goog.isNull(texture));