In https://github.com/linuxdeepin/youqu/blob/master/src/depends/dogtail/tree.py#L324 there is a return statement in a finally block, which would swallow any in-flight exception.
This means that if an unhandled exception (including a BaseException such as KeyboardInterrupt) is raised from the try body, it will not propagate on as expected.
See also https://docs.python.org/3/tutorial/errors.html#defining-clean-up-actions.
In https://github.com/linuxdeepin/youqu/blob/master/src/depends/dogtail/tree.py#L324 there is a
returnstatement in afinallyblock, which would swallow any in-flight exception.This means that if an unhandled exception (including a
BaseExceptionsuch asKeyboardInterrupt) is raised from thetrybody, it will not propagate on as expected.See also https://docs.python.org/3/tutorial/errors.html#defining-clean-up-actions.