[PATCH 2 of 7] mq: use checkpatchname

Idan Kamara idankk86 at gmail.com
Tue May 24 11:26:08 CDT 2011


# HG changeset patch
# User Idan Kamara <idankk86 at gmail.com>
# Date 1306253811 -10800
# Node ID c4d810d55be682bb8991fb30cb9eb05979d7f85e
# Parent  f56697eb253133382ca0ec6c6a8012038d1fd86e
mq: use checkpatchname

This also fixes a bug where qrename would allow
renaming a patch to a reserved name.

diff -r f56697eb2531 -r c4d810d55be6 hgext/mq.py
--- a/hgext/mq.py	Tue May 24 19:16:51 2011 +0300
+++ b/hgext/mq.py	Tue May 24 19:16:51 2011 +0300
@@ -892,14 +892,7 @@
         if date:
             date = util.parsedate(date)
         diffopts = self.diffopts({'git': opts.get('git')})
-        self.check_reserved_name(patchfn)
-        if os.path.exists(self.join(patchfn)):
-            if os.path.isdir(self.join(patchfn)):
-                raise util.Abort(_('"%s" already exists as a directory')
-                                 % patchfn)
-            else:
-                raise util.Abort(_('patch "%s" already exists') % patchfn)
-
+        self.checkpatchname(patchfn)
         inclsubs = self.check_substate(repo)
         if inclsubs:
             inclsubs.append('.hgsubstate')
@@ -1747,10 +1740,6 @@
             if patchname in self.series:
                 raise util.Abort(_('patch %s is already in the series file')
                                  % patchname)
-        def checkfile(patchname):
-            if not force and os.path.exists(self.join(patchname)):
-                raise util.Abort(_('patch "%s" already exists')
-                                 % patchname)
 
         if rev:
             if files:
@@ -1798,9 +1787,8 @@
 
                 if not patchname:
                     patchname = normname('%d.diff' % r)
-                self.check_reserved_name(patchname)
                 checkseries(patchname)
-                checkfile(patchname)
+                self.checkpatchname(patchname, force)
                 self.full_series.insert(0, patchname)
 
                 patchf = self.opener(patchname, "w")
@@ -1827,8 +1815,7 @@
                     raise util.Abort(_("patch %s does not exist") % filename)
 
                 if patchname:
-                    self.check_reserved_name(patchname)
-                    checkfile(patchname)
+                    self.checkpatchname(patchname, force)
 
                     self.ui.write(_('renaming %s to %s\n')
                                         % (filename, patchname))
@@ -1841,8 +1828,7 @@
                     raise util.Abort(_('need --name to import a patch from -'))
                 elif not patchname:
                     patchname = normname(os.path.basename(filename.rstrip('/')))
-                self.check_reserved_name(patchname)
-                checkfile(patchname)
+                self.checkpatchname(patchname, force)
                 try:
                     if filename == '-':
                         text = sys.stdin.read()
@@ -2606,12 +2592,7 @@
     if os.path.isdir(absdest):
         name = normname(os.path.join(name, os.path.basename(patch)))
         absdest = q.join(name)
-    if os.path.exists(absdest):
-        raise util.Abort(_('%s already exists') % absdest)
-
-    if name in q.series:
-        raise util.Abort(
-            _('A patch named %s already exists in the series file') % name)
+    q.checkpatchname(name)
 
     ui.note(_('renaming %s to %s\n') % (patch, name))
     i = q.find_series(patch)


More information about the Mercurial-devel mailing list