diff hgext/mq.py @ 27919:db24d6888896 stable

mq: check for reserved patch name with qimport -r (issue5033) Fix regression from 143b52fce68e. Catching aborts might not be pretty but it works and is a small change.
author Mads Kiilerich <madski@unity3d.com>
date Tue, 19 Jan 2016 06:00:59 +0100
parents c7cd551f07d0
children aa73d6a5d9ea b1d35e2e1af6
line wrap: on
line diff
--- a/hgext/mq.py	Tue Jan 19 06:00:30 2016 +0100
+++ b/hgext/mq.py	Tue Jan 19 06:00:59 2016 +0100
@@ -1117,11 +1117,22 @@
         """Return a suitable filename for title, adding a suffix to make
         it unique in the existing list"""
         namebase = re.sub('[\s\W_]+', '_', title.lower()).strip('_')
-        if not namebase:
+        if namebase:
+            try:
+                self.checkreservedname(namebase)
+            except error.Abort:
+                namebase = fallbackname
+        else:
             namebase = fallbackname
         name = namebase
         i = 0
-        while name in self.fullseries:
+        while True:
+            if name not in self.fullseries:
+                try:
+                    self.checkpatchname(name)
+                    break
+                except error.Abort:
+                    pass
             i += 1
             name = '%s__%s' % (namebase, i)
         return name