hgext/mq.py
branchstable
changeset 27513 707cdf2c3700
parent 26831 0a7610758c42
child 27533 a801d331a022
equal deleted inserted replaced
27441:e47841c8343d 27513:707cdf2c3700
   393             repo.ui.restoreconfig(phasebackup)
   393             repo.ui.restoreconfig(phasebackup)
   394 
   394 
   395 class AbortNoCleanup(error.Abort):
   395 class AbortNoCleanup(error.Abort):
   396     pass
   396     pass
   397 
   397 
   398 def makepatchname(existing, title):
   398 def makepatchname(existing, title, fallbackname):
   399     """Return a suitable filename for title, adding a suffix to make
   399     """Return a suitable filename for title, adding a suffix to make
   400     it unique in the existing list"""
   400     it unique in the existing list"""
   401     namebase = re.sub('[\s\W_]+', '_', title.lower()).strip('_')
   401     namebase = re.sub('[\s\W_]+', '_', title.lower()).strip('_')
       
   402     if not namebase:
       
   403         namebase = fallbackname
   402     name = namebase
   404     name = namebase
   403     i = 0
   405     i = 0
   404     while name in existing:
   406     while name in existing:
   405         i += 1
   407         i += 1
   406         name = '%s__%s' % (namebase, i)
   408         name = '%s__%s' % (namebase, i)
  2099                                          % (r, lastparent))
  2101                                          % (r, lastparent))
  2100                     lastparent = p1
  2102                     lastparent = p1
  2101 
  2103 
  2102                     if not patchname:
  2104                     if not patchname:
  2103                         patchname = makepatchname(self.fullseries,
  2105                         patchname = makepatchname(self.fullseries,
  2104                             repo[r].description().split('\n', 1)[0])
  2106                             repo[r].description().split('\n', 1)[0],
       
  2107                             '%d.diff' % r)
  2105                     checkseries(patchname)
  2108                     checkseries(patchname)
  2106                     self.checkpatchname(patchname, force)
  2109                     self.checkpatchname(patchname, force)
  2107                     self.fullseries.insert(0, patchname)
  2110                     self.fullseries.insert(0, patchname)
  2108 
  2111 
  2109                     patchf = self.opener(patchname, "w")
  2112                     patchf = self.opener(patchname, "w")