From 59f9637c777f0d9b4e305715813aac67cf842305 Mon Sep 17 00:00:00 2001 From: "Carlos A. Orduno" <39749557+orduno@users.noreply.github.com> Date: Thu, 5 Dec 2019 11:12:04 -0800 Subject: [PATCH] Fix launching multiple gzclient instances (#1411) Use PythonExpression to evaluate the condition substitution --- .../bringup/launch/nav2_multi_tb3_simulation_launch.py | 1 + nav2_bringup/bringup/launch/nav2_tb3_simulation_launch.py | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/nav2_bringup/bringup/launch/nav2_multi_tb3_simulation_launch.py b/nav2_bringup/bringup/launch/nav2_multi_tb3_simulation_launch.py index abcc87c450..16eca0f6ec 100644 --- a/nav2_bringup/bringup/launch/nav2_multi_tb3_simulation_launch.py +++ b/nav2_bringup/bringup/launch/nav2_multi_tb3_simulation_launch.py @@ -169,6 +169,7 @@ def generate_launch_description(): 'rviz_config_file': namespaced_rviz_config_file, 'use_rviz': use_rviz, 'use_simulator': 'False', + 'headless': 'False', 'use_robot_state_pub': use_robot_state_pub}.items()), LogInfo( diff --git a/nav2_bringup/bringup/launch/nav2_tb3_simulation_launch.py b/nav2_bringup/bringup/launch/nav2_tb3_simulation_launch.py index 568734e5e3..97bdfbb987 100644 --- a/nav2_bringup/bringup/launch/nav2_tb3_simulation_launch.py +++ b/nav2_bringup/bringup/launch/nav2_tb3_simulation_launch.py @@ -21,11 +21,11 @@ from launch import LaunchDescription from launch.actions import (DeclareLaunchArgument, EmitEvent, ExecuteProcess, IncludeLaunchDescription, RegisterEventHandler) -from launch.conditions import IfCondition, UnlessCondition +from launch.conditions import IfCondition from launch.event_handlers import OnProcessExit from launch.events import Shutdown from launch.launch_description_sources import PythonLaunchDescriptionSource -from launch.substitutions import LaunchConfiguration +from launch.substitutions import LaunchConfiguration, PythonExpression from nav2_common.launch import Node @@ -136,7 +136,7 @@ def generate_launch_description(): cwd=[launch_dir], output='screen') start_gazebo_client_cmd = ExecuteProcess( - condition=(IfCondition(use_simulator) and UnlessCondition(headless)), + condition=IfCondition(PythonExpression([use_simulator, ' and not ', headless])), cmd=['gzclient'], cwd=[launch_dir], output='screen')