From: Shawn O. Pearce Date: Fri, 27 Jul 2007 06:30:15 +0000 (-0400) Subject: git-gui: Don't kill modified commit message buffer with merge templates X-Git-Tag: gitgui-0.8.0~7 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=1e0a92fdf74caa0bf850f73e284818473c8f76e0;p=git.git git-gui: Don't kill modified commit message buffer with merge templates If the user is in the middle of a merge and has already started to modify their commit message we were losing the user's changes when they pressed 'Rescan' after resolving issues or making changes in the working directory. The problem here was our background timer that saves the commit message buffer. It marks the commit message buffer as not being modified when it writes it out to disk, so during the rescan we assumed the buffer should be replaced with what we read from the MERGE_MSG file. So we now only read these files from .git if we have a valid backup file. Since we clear it on commit this will only have an impact while the user is actively editing the current commit. Signed-off-by: Shawn O. Pearce --- diff --git a/git-gui.sh b/git-gui.sh index a38293a34..f87b955fd 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -829,8 +829,9 @@ proc rescan {after {honor_trustmtime 1}} { array unset file_states - if {![$ui_comm edit modified] - || [string trim [$ui_comm get 0.0 end]] eq {}} { + if {!$::GITGUI_BCK_exists && + (![$ui_comm edit modified] + || [string trim [$ui_comm get 0.0 end]] eq {})} { if {[string match amend* $commit_type]} { } elseif {[load_message GITGUI_MSG]} { } elseif {[load_message MERGE_MSG]} {