Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Collada_URDF Seg Fault #4

Closed
isucan opened this issue Jan 24, 2013 · 4 comments

Comments

Projects
None yet
4 participants
@isucan
Copy link
Contributor

commented Jan 24, 2013

When converting a URDF to DAE file, urdf_to_collada crashes in the collada_urdf package. No output or error message is given except:

Segmentation fault (core dumped)

GDB backtrace reports:

gdb --ex run --args urdf_to_collada ~/ros/clam/src/clam_description/urdf_ikfast/clam.urdf ~/ros/clam/src/clam_description/urdf_ikfast/clam.dae
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /home/dave/ros/misc/devel/lib/collada_urdf/urdf_to_collada...(no debugging symbols found)...done.
Starting program: /home/dave/ros/misc/devel/lib/collada_urdf/urdf_to_collada /home/dave/ros/clam/src/clam_description/urdf_ikfast/clam.urdf /home/dave/ros/clam/src/clam_description/urdf_ikfast/clam.dae
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff6c96f28 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
(gdb) bt
#0  0x00007ffff6c96f28 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#1  0x00007ffff54ea300 in cdom::nativePathToUri(std::string const&, cdom::systemType) ()
   from /usr/lib/libcollada-dom2.4-dp.so.0
#2  0x00007ffff54dbbd0 in DAE::makeFullUri(std::string const&) () from /usr/lib/libcollada-dom2.4-dp.so.0
#3  0x00007ffff54dc2d6 in DAE::writeCommon(std::string const&, std::string const&, bool) ()
   from /usr/lib/libcollada-dom2.4-dp.so.0
#4  0x00007ffff7b51e30 in collada_urdf::colladaToFile(boost::shared_ptr<DAE>, std::string const&) ()
   from /home/dave/ros/misc/devel/lib/libcollada_urdf.so
#5  0x000000000040737b in main ()
(gdb) 
#0  0x00007ffff6c96f28 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#1  0x00007ffff54ea300 in cdom::nativePathToUri(std::string const&, cdom::systemType) ()
   from /usr/lib/libcollada-dom2.4-dp.so.0
#2  0x00007ffff54dbbd0 in DAE::makeFullUri(std::string const&) () from /usr/lib/libcollada-dom2.4-dp.so.0
#3  0x00007ffff54dc2d6 in DAE::writeCommon(std::string const&, std::string const&, bool) ()
   from /usr/lib/libcollada-dom2.4-dp.so.0
#4  0x00007ffff7b51e30 in collada_urdf::colladaToFile(boost::shared_ptr<DAE>, std::string const&) ()
   from /home/dave/ros/misc/devel/lib/libcollada_urdf.so
#5  0x000000000040737b in main ()

@k-okada

This comment has been minimized.

Copy link
Contributor

commented Feb 14, 2013

I'm not fully understand what's happening but attached patch fill fix the segfault problem.

http://jsk-ros-pkg.svn.sourceforge.net/viewvc/jsk-ros-pkg/trunk/jsk_ros_patch/collada_urdf_jsk_patch/collada.patch?view=markup&pathrev=3874

@wjwwood

This comment has been minimized.

Copy link
Member

commented Feb 14, 2013

@k-okada Please turn your patch into a pull request:

https://help.github.com/articles/using-pull-requests

You can reference this issue in the pull request using the #4 notation.

And in the future if you need to link text use https://gist.github.com, it is much easier.

@bit-pirate

This comment has been minimized.

Copy link

commented Nov 27, 2013

I'm still seeing this in Hydro (deb version 1.10.17-0, running Ubuntu 12.04.02 64bit). Is this supposed to be fixed?

Source is identical to the deb. So, here is the stack trace:

#0  0x00007ffff6d20002 in collada_urdf::ColladaWriter::_loadVertices(shapes::Mesh const*, daeSmartRef<ColladaDOM150::domGeometry>) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#1  0x00007ffff6d1d4ea in collada_urdf::ColladaWriter::_WriteGeometry(boost::shared_ptr<urdf::Geometry>, std::string const&, urdf::Pose*) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#2  0x00007ffff6d1b155 in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#3  0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#4  0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#5  0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#6  0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#7  0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#8  0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#9  0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#10 0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#11 0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#12 0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#13 0x00007ffff6d1b82c in collada_urdf::ColladaWriter::_WriteLink(boost::shared_ptr<urdf::Link const>, daeSmartRef<daeElement>, daeSmartRef<ColladaDOM150::domNode>, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#14 0x00007ffff6d182f1 in collada_urdf::ColladaWriter::WriteKinematics_model(int) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#15 0x00007ffff6d15bcc in collada_urdf::ColladaWriter::_WriteInstance_kinematics_model(daeSmartRef<daeElement>, std::string const&, int) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#16 0x00007ffff6d134b4 in collada_urdf::ColladaWriter::_WriteRobot(int) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#17 0x00007ffff6d11c87 in collada_urdf::ColladaWriter::convert() () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#18 0x00007ffff6d093f2 in collada_urdf::WriteUrdfModelToColladaFile(urdf::Model const&, std::string const&) () from /opt/korus_workspace/moveit_ws/devel/lib/libcollada_urdf.so
#19 0x0000000000407002 in main ()

Should I create a new issue or will this one be re-opened?

@bit-pirate

This comment has been minimized.

Copy link

commented Nov 29, 2013

Identified the problem and created the new issue #45.

k-okada added a commit to jsk-ros-pkg/jsk_common that referenced this issue Mar 5, 2014

k-okada added a commit to jsk-ros-pkg/jsk_3rdparty that referenced this issue Jun 12, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.