commit ef79eec370d5a67c32bbc8053bb6ebccc270a68b
parent 8a3b730895a63cf7038733d2a4b6675834c5d48b
Author: Sergej Orlov <wladimirych@gmail.com>
Date: Thu, 23 Feb 2017 00:59:27 +0300
[print] dispose temp map after all tile promises fullfiled, not last one
Diffstat:
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/src/lib/leaflet.control.printPages/map-render.js b/src/lib/leaflet.control.printPages/map-render.js
@@ -233,9 +233,9 @@ async function* iterateLayersTiles(layers, latLngBounds, destPixelSize, resoluti
zoom
}
);
- let lastPromise;
+ let layerPromises = [];
for (let tilePromise of iterateTilePromises()) {
- lastPromise = tilePromise.tilePromise;
+ layerPromises.push(tilePromise.tilePromise);
tilePromise.tilePromise =
tilePromise.tilePromise.then((tileInfo) => Object.assign({zoom, progressInc: 1 / count}, tileInfo));
doStop = yield tilePromise;
@@ -248,9 +248,7 @@ async function* iterateLayersTiles(layers, latLngBounds, destPixelSize, resoluti
disposeMap(map);
break;
} else {
- if (lastPromise) {
- lastPromise.then(() => disposeMap(map));
- }
+ Promise.all(layerPromises).then(() => disposeMap(map));
}
}
}