--- a/mercurial/scmutil.py Wed Nov 19 18:35:14 2014 +0900
+++ b/mercurial/scmutil.py Wed Nov 19 18:35:14 2014 +0900
@@ -188,6 +188,15 @@
raise
return ""
+ def tryreadlines(self, path, mode='rb'):
+ '''gracefully return an empty array for missing files'''
+ try:
+ return self.readlines(path, mode=mode)
+ except IOError, inst:
+ if inst.errno != errno.ENOENT:
+ raise
+ return []
+
def open(self, path, mode="r", text=False, atomictemp=False):
self.open = self.__call__
return self.__call__(path, mode, text, atomictemp)
@@ -199,6 +208,13 @@
finally:
fp.close()
+ def readlines(self, path, mode='rb'):
+ fp = self(path, mode=mode)
+ try:
+ return fp.readlines()
+ finally:
+ fp.close()
+
def write(self, path, data):
fp = self(path, 'wb')
try: