comparison mercurial/merge.py @ 27006:9d58dc193c46

mergestate.commit: factor out making the list of records Will aid in testing.
author Siddharth Agarwal <sid0@fb.com>
date Tue, 17 Nov 2015 14:23:26 -0800
parents 3185c01c551c
children 35102876d648
comparison
equal deleted inserted replaced
27005:3185c01c551c 27006:9d58dc193c46
284 self._repo.vfs.exists(self.statepathv2) 284 self._repo.vfs.exists(self.statepathv2)
285 285
286 def commit(self): 286 def commit(self):
287 """Write current state on disk (if necessary)""" 287 """Write current state on disk (if necessary)"""
288 if self._dirty: 288 if self._dirty:
289 records = [] 289 records = self._makerecords()
290 records.append(('L', hex(self._local)))
291 records.append(('O', hex(self._other)))
292 if self.mergedriver:
293 records.append(('m', '\0'.join([
294 self.mergedriver, self._mdstate])))
295 for d, v in self._state.iteritems():
296 if v[0] == 'd':
297 records.append(('D', '\0'.join([d] + v)))
298 else:
299 records.append(('F', '\0'.join([d] + v)))
300 self._writerecords(records) 290 self._writerecords(records)
301 self._dirty = False 291 self._dirty = False
292
293 def _makerecords(self):
294 records = []
295 records.append(('L', hex(self._local)))
296 records.append(('O', hex(self._other)))
297 if self.mergedriver:
298 records.append(('m', '\0'.join([
299 self.mergedriver, self._mdstate])))
300 for d, v in self._state.iteritems():
301 if v[0] == 'd':
302 records.append(('D', '\0'.join([d] + v)))
303 else:
304 records.append(('F', '\0'.join([d] + v)))
305 return records
302 306
303 def _writerecords(self, records): 307 def _writerecords(self, records):
304 """Write current state on disk (both v1 and v2)""" 308 """Write current state on disk (both v1 and v2)"""
305 self._writerecordsv1(records) 309 self._writerecordsv1(records)
306 self._writerecordsv2(records) 310 self._writerecordsv2(records)