diff --git a/src/style/style.js b/src/style/style.js index bcd8d1c1ffb..f06f14981f1 100644 --- a/src/style/style.js +++ b/src/style/style.js @@ -250,20 +250,7 @@ class Style extends Evented { } if (json.sprite) { - this._spriteRequest = loadSprite(json.sprite, this.map._requestManager, (err, images) => { - this._spriteRequest = null; - if (err) { - this.fire(new ErrorEvent(err)); - } else if (images) { - for (const id in images) { - this.imageManager.addImage(id, images[id]); - } - } - - this.imageManager.setLoaded(true); - this.dispatcher.broadcast('setImages', this.imageManager.listImages()); - this.fire(new Event('data', {dataType: 'style'})); - }); + this._loadSprite(json.sprite); } else { this.imageManager.setLoaded(true); } @@ -288,6 +275,23 @@ class Style extends Evented { this.fire(new Event('style.load')); } + _loadSprite(url: string) { + this._spriteRequest = loadSprite(url, this.map._requestManager, (err, images) => { + this._spriteRequest = null; + if (err) { + this.fire(new ErrorEvent(err)); + } else if (images) { + for (const id in images) { + this.imageManager.addImage(id, images[id]); + } + } + + this.imageManager.setLoaded(true); + this.dispatcher.broadcast('setImages', this.imageManager.listImages()); + this.fire(new Event('data', {dataType: 'style'})); + }); + } + _validateLayer(layer: StyleLayer) { const sourceCache = this.sourceCaches[layer.source]; if (!sourceCache) {