From 96ef54b8648fb500d057e56bc042fe369828a765 Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Sun, 9 Nov 2014 15:52:43 -0500 Subject: [PATCH] Repair broken diff command. --- src | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src b/src index ef822c1..0e8ce3f 100755 --- a/src +++ b/src @@ -753,7 +753,8 @@ def release_method(*args): elif not os.path.exists(backend.master(arg)): croak("%s is not registered, skipping" % arg) else: - backend.release(arg) + with backend.lifter(arg): + backend.release(arg) def ls_method(*args): "List registered files." @@ -940,12 +941,13 @@ class RCS: self.master(target))) def diff(self, diffspec1, diffspec2, diffopts, arg): "Report a diff." - # The || : suppresses the error return from diff(1) if diffspec1: diffspec1 = "-r" + diffspec1 if diffspec2: diffspec2 = "-r" + diffspec1 - do_or_die("rcsdiff -q {0} {1} {2} || :".format(diffspec, diffopts, arg),loud=True) + # The || : is a hacky shell trick that suppresses the error + # return from diff(1). + do_or_die("rcsdiff -q {0} {1} {2} {3} || :\n".format(diffspec1, diffspec2, diffopts, arg), loud=True) def release(self, arg): "Release locks." do_or_die("rcs -q -u {0},v".format(arg)) -- 2.43.0