mirror of
https://github.com/pre-commit/pre-commit.git
synced 2026-01-13 20:40:08 -06:00
Fix handling of SIGINT in hook script
This commit is contained in:
@@ -170,16 +170,25 @@ def _opts(stdin):
|
||||
return ('--config', CONFIG, '--hook-stage', stage) + fns[HOOK_TYPE](stdin)
|
||||
|
||||
|
||||
if sys.version_info < (3, 7): # https://bugs.python.org/issue25942
|
||||
def _subprocess_call(cmd): # this is the python 2.7 implementation
|
||||
return subprocess.Popen(cmd).wait()
|
||||
else:
|
||||
_subprocess_call = subprocess.call
|
||||
|
||||
|
||||
def main():
|
||||
retv, stdin = _run_legacy()
|
||||
try:
|
||||
_validate_config()
|
||||
return retv | subprocess.call(_exe() + _opts(stdin))
|
||||
return retv | _subprocess_call(_exe() + _opts(stdin))
|
||||
except EarlyExit:
|
||||
return retv
|
||||
except FatalError as e:
|
||||
print(e.args[0])
|
||||
return 1
|
||||
except KeyboardInterrupt:
|
||||
return 1
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
Reference in New Issue
Block a user