Fix repoman --commitmsgfile logic. Thanks to Christian Heim <phreak@gentoo.org>...
authorZac Medico <zmedico@gentoo.org>
Thu, 20 Apr 2006 20:13:18 +0000 (20:13 -0000)
committerZac Medico <zmedico@gentoo.org>
Thu, 20 Apr 2006 20:13:18 +0000 (20:13 -0000)
svn path=/main/trunk/; revision=3179

bin/repoman

index b11bf0fd47e5a1d308fcf09b43b898cb99d19edc..fd67ce11750348054ca04c662a2f3b9ffde4383a 100755 (executable)
@@ -1519,7 +1519,20 @@ else:
                print "myheaders:",myheaders
                print
        unlinkfile=0
-       if not (commitmessage or commitmessagefile):
+       if commitmessagefile:
+               try:
+                       f = open(commitmessagefile)
+                       commitmessage = f.read()
+                       f.close()
+                       del f
+               except (IOError, OSError), e:
+                       if e.errno == errno.ENOENT:
+                               portage.writemsg("!!! File Not Found: --commitmsgfile='%s'\n" % commitmessagefile)
+                       else:
+                               raise
+               # We've read the content so the file is no longer needed.
+               commitmessagefile = None
+       if not commitmessage:
                print "Please enter a CVS commit message at the prompt:"
                while not commitmessage:
                        try:
@@ -1528,7 +1541,7 @@ else:
                                exithandler()
        try:
                commitmessage+="\n(Portage version: "+str(portage.VERSION)+")"
-       except:
+       except AttributeError:
                print "Failed to insert portage version in message!"
                commitmessage+="\n(Portage version: Unknown)"
        if not commitmessagefile: