diff --git a/cartographer/cloud/internal/handlers/add_trajectory_handler.cc b/cartographer/cloud/internal/handlers/add_trajectory_handler.cc index 237bcf6..8133c91 100644 --- a/cartographer/cloud/internal/handlers/add_trajectory_handler.cc +++ b/cartographer/cloud/internal/handlers/add_trajectory_handler.cc @@ -55,6 +55,9 @@ void AddTrajectoryHandler::OnRequest( // freeze the trajectory on the server. trajectory_builder_options.clear_pure_localization_trimmer(); + // Ignore initial poses in trajectory_builder_options. + trajectory_builder_options.clear_initial_trajectory_pose(); + GetContext() ->local_trajectory_uploader() ->AddTrajectory(trajectory_id, expected_sensor_ids, diff --git a/cartographer/cloud/internal/handlers/add_trajectory_handler_test.cc b/cartographer/cloud/internal/handlers/add_trajectory_handler_test.cc index b392b26..c4f2339 100644 --- a/cartographer/cloud/internal/handlers/add_trajectory_handler_test.cc +++ b/cartographer/cloud/internal/handlers/add_trajectory_handler_test.cc @@ -122,9 +122,11 @@ TEST_F(AddTrajectoryHandlerTest, WithLocalSlamUploader) { .WillOnce(Return(13)); auto upstream_trajectory_builder_options = request.trajectory_builder_options(); + // Reproduce the changes to the request as done by the handler. upstream_trajectory_builder_options.clear_trajectory_builder_2d_options(); upstream_trajectory_builder_options.clear_trajectory_builder_3d_options(); upstream_trajectory_builder_options.clear_pure_localization_trimmer(); + upstream_trajectory_builder_options.clear_initial_trajectory_pose(); EXPECT_CALL(*mock_local_trajectory_uploader_, AddTrajectory(Eq(13), ParseSensorIds(request), Truly(testing::BuildProtoPredicateEquals(