summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBirte Kristina Friesel <derf@finalrewind.org>2026-01-11 11:23:36 +0100
committerBirte Kristina Friesel <derf@finalrewind.org>2026-01-11 11:23:36 +0100
commit8fe654151a789ee782189fc9d7218a32269b1bfb (patch)
tree851445c0ac1492ae1bd4263fa77f43770dc928ca
parent30205bce4892b3fdaffb33e0c85d38daceeeeb3b (diff)
polyline_add_stops: override mapping of first/last stop for partial uploadsHEAD2.18.12main
Closes #356
-rwxr-xr-xlib/Travelynx/Controller/Traveling.pm15
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/Travelynx/Controller/Traveling.pm b/lib/Travelynx/Controller/Traveling.pm
index da889f0..0132a23 100755
--- a/lib/Travelynx/Controller/Traveling.pm
+++ b/lib/Travelynx/Controller/Traveling.pm
@@ -2205,8 +2205,19 @@ sub polyline_add_stops {
}
$route_i += 1;
}
- $route_i = 0;
+ $route_i = -1;
for my $stop ( @{$route} ) {
+ $route_i += 1;
+ if ( $opt{partial} ) {
+ if ( $route_i == 0 ) {
+ $polyline->[0][2] = $stop->[1];
+ next;
+ }
+ if ( $route_i == $#{$route} ) {
+ $polyline->[-1][2] = $stop->[1];
+ next;
+ }
+ }
my $key = $route_i . ';' . $stop->[1];
if ( $min_dist{$key} ) {
if ( defined $polyline->[ $min_dist{$key}{index} ][2] ) {
@@ -2232,7 +2243,6 @@ sub polyline_add_stops {
$polyline->[ $min_dist{$key}{index} ][2]
= $stop->[1];
}
- $route_i += 1;
}
return;
}
@@ -2350,6 +2360,7 @@ sub set_polyline {
my $err = $self->polyline_add_stops(
polyline => \@polyline,
route => \@route,
+ partial => ( $self->param('upload-partial') ? 1 : 0 ),
);
if ($err) {