Removing all robots from simulation causes crash
Posted: Wed Jan 08, 2020 8:56 pm
Hi Carlo,
I'm now able to permanently remove robots at will using RemoveEntity(), as long as there is always one robot left in simulation after removal. But, if I remove the last robot, then I get a segmentation fault from ARGoS on line 347 of space_multi_thread_balance_quantity.cpp whenever n_threads is >= 1 (if I omit the attribute altogether, then I don't get an error). has size 0 (as expected, as there are now no robots in simulation), but still has size 1. I think this is caused by not being set in an instance when it needs to be to correctly update the robots assigned to a given thread, but I'm not sure where, because it is set in RemoveControllableEntity(), which is where I would think it needs to go.
Do you have any idea why this might happen? Is it related to ARGoS not starting unless there is at least one robot specified in the input file?
Thanks!
- John
I'm now able to permanently remove robots at will using RemoveEntity(), as long as there is always one robot left in simulation after removal. But, if I remove the last robot, then I get a segmentation fault from ARGoS on line 347 of space_multi_thread_balance_quantity.cpp whenever n_threads is >= 1 (if I omit the attribute altogether, then I don't get an error).
Code: Select all
m_vecControllableEntities
Code: Select all
cEntityRange
Code: Select all
m_bIsControllableEntityAssignmentRecalculationNeeded
Do you have any idea why this might happen? Is it related to ARGoS not starting unless there is at least one robot specified in the input file?
Thanks!
- John