diff hgext/mq.py @ 4911:fc502517d68d

mq: autodetect an existing git patch during qrefresh (issue 491)
author Bryan O'Sullivan <bos@serpentine.com>
date Mon, 16 Jul 2007 16:50:47 -0700
parents 2ececafa5859
children 8535c1770dd3 06154aff2b1a 5bbbd1f1d586
line wrap: on
line diff
--- a/hgext/mq.py
+++ b/hgext/mq.py
@@ -909,7 +909,16 @@ class queue:
         patchparent = self.qparents(repo, top)
         message, comments, user, date, patchfound = self.readheaders(patchfn)
 
-        patchf = self.opener(patchfn, "w")
+        patchf = self.opener(patchfn, 'r+')
+
+        # if the patch was a git patch, refresh it as a git patch
+        for line in patchf:
+            if line.startswith('diff --git'):
+                self.diffopts().git = True
+                break
+        patchf.seek(0)
+        patchf.truncate()
+
         msg = opts.get('msg', '').rstrip()
         if msg:
             if comments: