VFH provides a planner to inform the upper device if it has reached the goal. This planner is using this->planner_data.done = 1; to mark the flag.
The bug is that this flag is initialized as 0 or false. This means that VFH will be initially not done/ busy. The flag should be change to 1 or true right before the main while loop start.
Patch submitted here: http://sourceforge.net/tracker/index.php?func=detail&atid=433166&aid=2144822&group_id=42445
Fixed in CVS HEAD. Thanks very much for the report.