nakarte

Source code of https://map.sikmir.ru (fork)
git clone git://git.sikmir.ru/nakarte
Log | Files | Refs | LICENSE

commit 9d1901392914aa9a44a98f54c1fcb0ee5309383c
parent 81c9e484975c64bf219c7bc833ec17d18f32586b
Author: Sergej Orlov <wladimirych@gmail.com>
Date:   Sat, 25 Feb 2017 22:54:41 +0300

[track list] hadle errors when reading kmz and zip files

Diffstat:
Msrc/lib/leaflet.control.track-list/lib/geo_file_formats.js | 24++++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)

diff --git a/src/lib/leaflet.control.track-list/lib/geo_file_formats.js b/src/lib/leaflet.control.track-list/lib/geo_file_formats.js @@ -275,7 +275,11 @@ function parseKml(txt, name) { function parseKmz(txt, name) { var uncompressed; - var unzipper = new JSUnzip(txt); + try { + var unzipper = new JSUnzip(txt); + } catch (e) { + return null; + } var tracks = [], points = [], geodata, @@ -284,7 +288,11 @@ function parseKmz(txt, name) { if (!unzipper.isZipFile()) { return null; } - unzipper.readEntries(); + try { + unzipper.readEntries(); + } catch (e) { + return null; + } var i, entry; for (i = 0; i < unzipper.entries.length; i++) { entry = unzipper.entries[i]; @@ -355,11 +363,19 @@ function parseYandexRulerUrl(s) { function parseZip(txt, name) { - var unzipper = new JSUnzip(txt); + try { + var unzipper = new JSUnzip(txt); + } catch (e) { + return null; + } if (!unzipper.isZipFile()) { return null; } - unzipper.readEntries(); + try { + unzipper.readEntries(); + } catch (e) { + return null; + } var geodata_array = []; for (var i = 0; i < unzipper.entries.length; i++) { var entry = unzipper.entries[i];