[ros-users] roslaunch remap with if

Ken Conley kwc at willowgarage.com
Thu Nov 25 02:15:43 UTC 2010


Hi Michael,

Thanks for reporting this. This is a bug. r12332 fixes it in ROS 1.2.

 - Ken

On Wed, Nov 24, 2010 at 2:26 PM, Michael Krainin
<mkrainin at cs.washington.edu> wrote:
> Hello,
>
> I have a launch file with the following line:
> <remap if="$(arg playback)" from="/rgbd/image"
> to="/surfel_node/republished_image" />
> where playback is defined as
> <arg name="playback" default="false"/>
>
> When playback is set to true, roslaunch works fine with this launch
> file. When it's set to false, however, roslaunch dies and gives the
> following message:
> Traceback (most recent call last):
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/__init__.py",
> line 214, in main
>    p.start()
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/parent.py",
> line 246, in start
>    self._start_infrastructure()
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/parent.py",
> line 197, in _start_infrastructure
>    self._load_config()
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/parent.py",
> line 118, in _load_config
>    self.config =
> roslaunch.config.load_config_default(self.roslaunch_files, self.port,
> verbose=self.verbose)
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/config.py",
> line 381, in load_config_default
>    loader.load(f, config, verbose=verbose)
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/xmlloader.py",
> line 731, in load
>    self._load_launch(launch, ros_config, is_core=core,
> filename=filename, argv=argv, verbose=verbose)
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/xmlloader.py",
> line 704, in _load_launch
>    self._recurse_load(ros_config, launch.childNodes,
> self.root_context, None, is_core, verbose)
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/xmlloader.py",
> line 630, in _recurse_load
>    n = self._node_tag(tag, context.child(''), ros_config,
> default_machine, verbose=verbose)
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/xmlloader.py",
> line 94, in call
>    return f(*args, **kwds)
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/xmlloader.py",
> line 374, in _node_tag
>    remap_context.add_remap(self._remap_tag(t, context, ros_config))
>  File "/pr/ros-cturtle/ros/tools/roslaunch/src/roslaunch/loader.py",
> line 211, in add_remap
>    remap = [canonicalize_name(x) for x in remap]
> TypeError: 'NoneType' object is not iterable
>
> Is 'remap' incompatible with 'if' or am I just doing things wrong.
>
> Thanks,
> Mike
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>



More information about the ros-users mailing list