Kiln » TortoiseHg » TortoiseHg
Clone URL:  
Pushed to one repository · View In Graph Contained in 0.8, 0.8.1, and 0.8.2

history: merge refresh fixes

Needed to invalidate the repo dirstate in order to discover
new parents. Needed to keep track of changelog size in order
to discover merge commit. After the merge commit, we need to
reload the log, not just refresh the model.

Changeset c21176c29016

Parent 672e90b71f9e

by Steve Borho

Changes to one file · Browse files at c21176c29016 Showing diff from parent 672e90b71f9e Diff from another changeset...

Change 1 of 2 Show Entire File hggtk/​history.py Stacked
 
710
711
712
 
 
713
714
715
 
722
723
724
725
 
726
727
728
729
 
 
 
 
730
731
 
 
 
732
733
734
 
710
711
712
713
714
715
716
717
 
724
725
726
 
727
728
729
730
 
731
732
733
734
735
 
736
737
738
739
740
741
@@ -710,6 +710,8 @@
  dialog.set_transient_for(None)     def checkout_completed(self, oldparents): + self.repo.invalidate() + self.repo.dirstate.invalidate()   newparents = [x.node() for x in self.repo.parents()]   if not oldparents == newparents:   self.refresh_model() @@ -722,13 +724,18 @@
  dialog = merge.MergeDialog(rev)   dialog.set_transient_for(self)   dialog.show_all() - dialog.set_notify_func(self.merge_completed, parents) + dialog.set_notify_func(self.merge_completed, parents, len(self.repo))   dialog.present()   dialog.set_transient_for(None)   - def merge_completed(self, oldparents): + def merge_completed(self, args): + self.repo.invalidate() + self.repo.dirstate.invalidate() + oldparents, repolen = args   newparents = [x.node() for x in self.repo.parents()] - if not oldparents == newparents: + if len(self.repo) != repolen: + self.reload_log() + elif not oldparents == newparents:   self.refresh_model()     def selection_changed(self, treeview):