comparison hgext/mq.py @ 7568:12df451ce205

mq: don't warn about ambiguous patch name when using patch index (issue1439)
author Jason Orendorff <jorendorff@mozilla.com>
date Tue, 06 Jan 2009 10:30:22 +0100
parents 5f7e3f17aece
children 3cf85220a9f9 f9fcb189c8e2
comparison
equal deleted inserted replaced
7567:0946294d1f32 7568:12df451ce205
836 if s == 'qtip': 836 if s == 'qtip':
837 return self.series[self.series_end(True)-1] 837 return self.series[self.series_end(True)-1]
838 if s == 'qbase': 838 if s == 'qbase':
839 return self.series[0] 839 return self.series[0]
840 return None 840 return None
841
841 if patch == None: 842 if patch == None:
842 return None 843 return None
843 844 if patch in self.series:
844 # we don't want to return a partial match until we make 845 return patch
845 # sure the file name passed in does not exist (checked below)
846 res = partial_name(patch)
847 if res and res == patch:
848 return res
849 846
850 if not os.path.isfile(self.join(patch)): 847 if not os.path.isfile(self.join(patch)):
851 try: 848 try:
852 sno = int(patch) 849 sno = int(patch)
853 except(ValueError, OverflowError): 850 except(ValueError, OverflowError):
854 pass 851 pass
855 else: 852 else:
856 if sno < len(self.series): 853 if -len(self.series) <= sno < len(self.series):
857 return self.series[sno] 854 return self.series[sno]
855
858 if not strict: 856 if not strict:
859 # return any partial match made above 857 res = partial_name(patch)
860 if res: 858 if res:
861 return res 859 return res
862 minus = patch.rfind('-') 860 minus = patch.rfind('-')
863 if minus >= 0: 861 if minus >= 0:
864 res = partial_name(patch[:minus]) 862 res = partial_name(patch[:minus])