--- a/mercurial/mdiff.py Sat Feb 17 04:50:06 2007 -0200
+++ b/mercurial/mdiff.py Tue Feb 20 20:55:23 2007 +0100
@@ -5,7 +5,7 @@
# This software may be used and distributed according to the terms
# of the GNU General Public License, incorporated herein by reference.
-import bdiff, mpatch, re, struct, util
+import bdiff, mpatch, re, struct, util, md5
def splitnewlines(text):
'''like str.splitlines, but only split on newlines.'''
@@ -57,6 +57,11 @@
epoch = util.datestr((0, 0))
if not opts.text and (util.binary(a) or util.binary(b)):
+ def h(v):
+ # md5 is used instead of sha1 because md5 is supposedly faster
+ return md5.new(v).digest()
+ if a and b and len(a) == len(b) and h(a) == h(b):
+ return ""
l = ['Binary file %s has changed\n' % fn]
elif not a:
b = splitnewlines(b)