diff --git a/patchview/patchview-wrapper b/patchview/patchview-wrapper index 989d0fa..23c4a78 100755 --- a/patchview/patchview-wrapper +++ b/patchview/patchview-wrapper @@ -79,28 +79,23 @@ if args.debug: sys.stderr.flush() p1 = Popen(vcs_cmd, stdout=PIPE, env=enviro, cwd=workdir) -if pipetoview: - p2 = Popen(patchview_cmd, stdin=p1.stdout, stdout=PIPE, env=enviro, cwd=workdir) -else: - p2 = Popen(patchview_cmd, stdin=p1.stdout, env=enviro, cwd=workdir) - -p1.wait() -ret1 = p1.returncode -if ret1 != 0: - stdout1, _ = p1.communicate() - if stdout1: - sys.stdout.buffer.write(stdout1) - sys.exit(ret1) +p2 = Popen(patchview_cmd, stdin=p1.stdout, stdout=PIPE, env=enviro, cwd=workdir) -p2.wait() +stdout2, _ = p2.communicate() ret2 = p2.returncode if ret2 != 0: - stdout2, _ = p2.communicate() if stdout2: sys.stdout.buffer.write(stdout2) sys.exit(ret2) +p1.wait() +ret1 = p1.returncode +if ret1 != 0: + sys.exit(ret1) + if pipetoview: - p3 = Popen(dest_cmd, stdin=p2.stdout, env=enviro, cwd=workdir) - p3.wait() + p3 = Popen(dest_cmd, stdin=PIPE, env=enviro, cwd=workdir) + stdout3, _ = p3.communicate(stdout2) +else: + sys.stdout.buffer.write(stdout2)