magazino / move_base_flex

Move Base Flex: a backwards-compatible replacement for move_base
https://uos.github.io/mbf_docs/
BSD 3-Clause "New" or "Revised" License
429 stars 154 forks source link

Send move_base result when canceled during exe_path and recovery #218

Closed corot closed 3 years ago

corot commented 4 years ago

On cancelling move_base action, we were calling goalhandle.setCanceled only while running get_path, but not during exe_path nor recovery. So the action client didn't get any result (I noticed that because SMACH simple action state freezes after sending a cancel)

Other related changes (sorry, was too cumbersome to make a separated PR):

Easily tested by sending any goal with axclient and canceling it, cause the status bar gets frozen in pink with the msg "Canceling goal":

rosrun actionlib axclient.py /move_base_flex/move_base

corot commented 3 years ago

A lot changes here, can you comment in the code why they are necessary?

True, sorry. I added comments in the PR itself, explaining the changes. Non commented stuff is just basic refactoring.