diff --git a/src/serve_rendered.js b/src/serve_rendered.js index 27fbeae..707ebef 100644 --- a/src/serve_rendered.js +++ b/src/serve_rendered.js @@ -162,8 +162,9 @@ const extractPathsFromQuery = (query, transformer) => { providedPath.includes('enc:') && PATH_PATTERN.test(decodeURIComponent(providedPath)) ) { - const encodedPaths = providedPath.replace('enc:', ''); - const coords = polyline.decode(encodedPaths).map(([lat, lng]) => [lng, lat]); + // +4 because enc: are 4 characters, everything after enc: is considered to be part of the polyline + const encIndex = providedPath.indexOf('enc:') + 4; + const coords = polyline.decode(providedPath.substring(encIndex)).map(([lat, lng]) => [lng, lat]); paths.push(coords); } else { // Iterate through paths, parse and validate them