fix: don't throw error in rulers if map file is corrupted

This commit is contained in:
Azgaar 2022-06-24 17:44:36 +03:00
parent 6cd2419f10
commit db519c40c8
3 changed files with 12 additions and 13 deletions

View file

@ -7813,7 +7813,7 @@
<script src="libs/alea.min.js"></script>
<script src="modules/fonts.js"></script>
<script src="modules/ui/layers.js"></script>
<script src="modules/ui/measurers.js"></script>
<script src="modules/ui/measurers.js?v=1.87.02"></script>
<script src="modules/ui/stylePresets.js"></script>
<script src="modules/ui/general.js?v=1.87.00"></script>

View file

@ -16,21 +16,20 @@ class Rulers {
fromString(string) {
this.data = [];
const typeMap = {
Ruler: Ruler,
Opisometer: Opisometer,
RouteOpisometer: RouteOpisometer,
Planimeter: Planimeter
};
const rulers = string.split("; ");
for (const rulerString of rulers) {
const [type, pointsString] = rulerString.split(": ");
if (!type || !pointsString) continue;
const points = pointsString.split(" ").map(el => el.split(",").map(n => +n));
const Type =
type === "Ruler"
? Ruler
: type === "Opisometer"
? Opisometer
: type === "RouteOpisometer"
? RouteOpisometer
: type === "Planimeter"
? Planimeter
: null;
this.create(Type, points);
this.create(typeMap[type], points);
}
}

View file

@ -1,7 +1,7 @@
"use strict";
// version and caching control
const version = "1.87.01"; // generator version, update each time
const version = "1.87.02"; // generator version, update each time
{
document.title += " v" + version;