Description of problem: Vivek found that perror_exit actually does not exit sometimes. This is because such as a=$(b c), support exit in function b, because b is called in a subshell, so the parent shell does not exit. It should be fixed in caller side, check and explicitly exit. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info: