[PATCH] Introduce a 'die' function.
authorFredrik Kuivinen <freku045@student.liu.se>
Mon, 12 Sep 2005 21:30:47 +0000 (23:30 +0200)
committerJunio C Hamano <junkio@cox.net>
Mon, 12 Sep 2005 21:53:58 +0000 (14:53 -0700)
Signed-off-by: Fredrik Kuivinen <freku045@student.liu.se>
Signed-off-by: Junio C Hamano <junkio@cox.net>
git-merge-fredrik.py
gitMergeCommon.py

index a5ca076..e4c6fe3 100755 (executable)
@@ -120,9 +120,8 @@ def unmergedCacheEntries():
             e.stages[stage].mode = mode
             e.stages[stage].sha1 = sha1
         else:
-            print 'Error: Merge program failed: Unexpected output from', \
-                  'git-ls-files:', l
-            sys.exit(2)
+            die('Error: Merge program failed: Unexpected output from', \
+                'git-ls-files:', l)
     return res
 
 def mergeTrees(head, merge, common, branch1Name, branch2Name,
@@ -381,15 +380,12 @@ def processEntry(entry, branch1Name, branch2Name, files, dirs,
         os.unlink(src1)
         os.unlink(src2)
     else:
-        print 'ERROR: Fatal merge failure.'
-        print "ERROR: Shouldn't happen"
-        sys.exit(2)
+        die("ERROR: Fatal merge failure, shouldn't happen.")
 
     return cleanMerge
 
 def usage():
-    print 'Usage:', sys.argv[0], ' <base>... -- <head> <remote>..'
-    sys.exit(2)
+    die('Usage:', sys.argv[0], ' <base>... -- <head> <remote>..')
 
 # main entry point as merge strategy module
 # The first parameters up to -- are merge bases, and the rest are heads.
@@ -399,8 +395,7 @@ def usage():
 for nextArg in xrange(1, len(sys.argv)):
     if sys.argv[nextArg] == '--':
         if len(sys.argv) != nextArg + 3:
-            print 'Not handling anything other than two heads merge.'
-            sys.exit(2)
+            die('Not handling anything other than two heads merge.')
         try:
             h1 = firstBranch = sys.argv[nextArg + 1]
             h2 = secondBranch = sys.argv[nextArg + 2]
index dfa49ff..7e7f317 100644 (file)
@@ -10,6 +10,10 @@ if sys.version_info[0] < 2 or \
 
 import subprocess
 
+def die(*args):
+    printList(args, sys.stderr)
+    sys.exit(2)
+
 # Debugging machinery
 # -------------------
 
@@ -28,11 +32,11 @@ def debug(*args):
         if funcName in functionsToDebug:
             printList(args)
 
-def printList(list):
+def printList(list, file=sys.stdout):
     for x in list:
-        sys.stdout.write(str(x))
-        sys.stdout.write(' ')
-    sys.stdout.write('\n')
+        file.write(str(x))
+        file.write(' ')
+    file.write('\n')
 
 # Program execution
 # -----------------