* Change mutex locker scope in SubmapsDisplay::update() This avoids the potential unsafe situation where someone (for example, SubmapsDisplay::Reset()) clears the trajectories vector, but update() uses it after the mutex has been released, since the scope of the lock was only in the try block. Also resolve a miscellaneous signed-unsigned warning. * Make DrawableSubmap destructor safer Make the DrawableSubmap destructor wait for the asynchronous fetch thread to finish - otherwise, it's possible to crash rviz by rapidly pressing the enable checkbox of the submaps plugin. Eventually the race condition will be triggered, and the fetch thread will write into a deleted DrawableSubmap object, which causes a crash. |
||
|---|---|---|
| .. | ||
| cartographer_rviz | ||
| ogre_media/materials | ||
| CMakeLists.txt | ||
| package.xml | ||
| rviz_plugin_description.xml | ||