laser_geometry icon indicating copy to clipboard operation
laser_geometry copied to clipboard

When I use the function projectorLaser(), the core dumped.

Open Oyssster opened this issue 5 years ago • 1 comments

I wirte a laserscanSub callback function which is used to process the laser scan.But when I try to projectroLaser the sensor_msgs::LaserScan to sensor_msgs::PointCloud, I get the result: Segmentation fault(core dumped).The code is as below:

void Scanprocess::laserscanSubCallback(const sensor_msgs::LaserScanConstPtr &msg)
{
    if (msg == NULL)
    {
        ROS_INFO("msg is a nullptr.");
        return;
    }
    std::cout << msg << std::endl;
    projector_->projectLaser(*msg, cloud_in_scan_);
}

I find the reason is :aborting core dump writing, size exceeds current limit 1048576.The address of msg is bigger than the limit.Could someone give me some suggestions?

Oyssster avatar Oct 14 '20 02:10 Oyssster

@Oyssster hard to tell. I'd suggest catching this in gdb and poking at the fields and addresses of msg and cloud_in_scan_ not see if anything looks suspicious. It looks like cloud_in_scan_ is a member variable of Scanprocess; is it possible that this callback gets called after the instance of Scanprocess is destroyed?

jonbinney avatar Oct 15 '20 01:10 jonbinney