From b92dabd4436a9156df5ba3631f06a13393a04d52 Mon Sep 17 00:00:00 2001 From: "Mark A. Williamson" Date: Mon, 19 Sep 2005 19:57:03 +0100 Subject: [PATCH] Support for multiple exit codes for external program, use this when calling diff. Signed-off-by: Mark Williamson --- ctcore.py | 4 ++-- hg.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ctcore.py b/ctcore.py index 3edca29..eaccd8f 100644 --- a/ctcore.py +++ b/ctcore.py @@ -51,7 +51,7 @@ class ProgramError(Exception): self.program = program self.error = err -def runProgram(prog, input=None, expectedexit=0): +def runProgram(prog, input=None, expectedexits=[0]): debug('runProgram prog: ' + str(prog) + " input: " + str(input)) if type(prog) is str: progStr = prog @@ -74,7 +74,7 @@ def runProgram(prog, input=None, expectedexit=0): out = pop.stdout.read() code = pop.wait() - if code != expectedexit: + if code not in expectedexits: debug("error output: " + out) raise ProgramError(progStr, out) debug("output: " + out.replace('\0', '\n')) diff --git a/hg.py b/hg.py index cf36a0d..62dbafc 100644 --- a/hg.py +++ b/hg.py @@ -31,7 +31,7 @@ def __getPatch(file, otherFile = None): return runProgram(['hg', 'diff', file.dstName]) else: return runProgram(['diff', '-u', '/dev/null', file.dstName], - expectedexit=1) + expectedexits=[0,1]) def __parseStatus(): inp = runProgram(['hg', 'status']) -- 2.11.4.GIT