@ -4,6 +4,7 @@
* #355: Fix traceback when a database hook value is null in a configuration file.
* #361: Merge override values when specifying the "--override" flag multiple times. The previous
behavior was to take the value of the last "--override" flag only.
* #368: Fix signal forwarding from borgmatic to Borg resulting in recursion traceback.
* #347: Add hooks that run for the "extract" action: "before_extract" and "after_extract".
@ -4,8 +4,13 @@ import signal
def _handle_signal(signal_number, frame): # pragma: no cover
Send the signal to all processes in borgmatic's process group, which includes child process.
Send the signal to all processes in borgmatic's process group, which includes child processes.
# Prevent infinite signal handler recursion. If the parent frame is this very same handler
# function, we know we're recursing.
if frame.f_back.f_code.co_name == _handle_signal.__name__: