node: /usr/include/boost/smart_ptr/shared_ptr.hpp:734: typename boost::detail::sp_member_access<T>::type = gazebo::transport::Publication*]: Assertionpx != 0' failed
Opened this issue · 4 comments
Hi everyone,
I am trying to synchronize two ROS2 packages, each running a websocket server on the same PORT in order to tunnel Messages.
Is that the conflict throwing this boost:: error?
node: /usr/include/boost/smart_ptr/shared_ptr.hpp:734: typename boost::detail::sp_member_access<T>::type boost::shared_ptr<T>::operator->() const [with T = gazebo::transport::Publication; typename boost::detail::sp_member_access<T>::type = gazebo::transport::Publication*]: Assertion
px != 0' failed.`
What does this indicate?
Publication; typename boost::detail::sp_member_access::type = gazebo::transport::Publication]: Assertion px != 0' failed.
*
Is there a websocket server configuration that can allow two different ROS nodes to listen on the same PORT?
Thank you
is it a threading issue?
is it related to https://answers.gazebosim.org/question/7173/gazebo-crashes-assertion-px-0-failed/?answer=25951#post-id-25951
errors usually come from trying to access joints or links through pointer that do not exist.
this is the boost line throwing the Assertion px error
smart_ptr/include/boost/smart_ptr/shared_ptr.hpp
typename boost::detail::sp_array_access< T >::type operator[] ( std::ptrdiff_t i ) const BOOST_SP_NOEXCEPT_WITH_ASSERT
{
BOOST_ASSERT( px != 0 );
BOOST_ASSERT( i >= 0 && ( i < boost::detail::sp_extent< T >::value || boost::detail::sp_extent< T >::value == 0 ) );
source /usr/share/gazebo/setup.bash
source /usr/share/gazebo-11/setup.bash
This worked for me.