'Call self.finish() before delegating to the original SIGINT handler.
This handler should only be in place while the progress display is
active.'

def handle_sigint(self, signum, frame):

    self.finish()
    self.original_handler(signum, frame)
