From: Frank Li Date: Mon, 2 Feb 2009 14:46:02 +0000 (+0800) Subject: BugID 16 Fix F5 Refresh Don't work problem X-Git-Url: http://git.sourceforge.jp/view?p=tortoisegit%2FTortoiseGitJp.git;a=commitdiff_plain;h=2a584b99945cef1f8b186bc8121b690872567915;hp=175466eb4f7944853ce90c0caad8aaac4b771341 BugID 16 Fix F5 Refresh Don't work problem http://code.google.com/p/tortoisegit/issues/detail?id=16 Git/GitStatusListCtrl have not clear before refresh Signed-off-by: Frank Li --- diff --git a/src/Git/GitStatusListCtrl.cpp b/src/Git/GitStatusListCtrl.cpp index 4edf274..4357bb3 100644 --- a/src/Git/GitStatusListCtrl.cpp +++ b/src/Git/GitStatusListCtrl.cpp @@ -5376,6 +5376,15 @@ int CGitStatusListCtrl::UpdateFileList(int mask,bool once,CTGitPathList *List) } return 0; } + +void CGitStatusListCtrl::Clear() +{ + m_FileLoaded=0; + this->DeleteAllItems(); + this->m_arListArray.clear(); + this->m_arStatusArray.clear(); + this->m_changelists.clear(); +} ////////////////////////////////////////////////////////////////////////// #if 0 bool CGitStatusListCtrlDropTarget::OnDrop(FORMATETC* pFmtEtc, STGMEDIUM& medium, DWORD * /*pdwEffect*/, POINTL pt) diff --git a/src/Git/GitStatusListCtrl.h b/src/Git/GitStatusListCtrl.h index 7fda321..70938f3 100644 --- a/src/Git/GitStatusListCtrl.h +++ b/src/Git/GitStatusListCtrl.h @@ -914,6 +914,7 @@ public: int UpdateWithGitPathList(CTGitPathList &list); void AddEntry(CTGitPath* path, WORD langID, int ListIndex); + void Clear(); int m_FileLoaded; git_revnum_t m_CurrentVersion; public: diff --git a/src/TortoiseProc/CommitDlg.cpp b/src/TortoiseProc/CommitDlg.cpp index a0ebdfd..4bfa992 100644 --- a/src/TortoiseProc/CommitDlg.cpp +++ b/src/TortoiseProc/CommitDlg.cpp @@ -660,6 +660,7 @@ UINT CCommitDlg::StatusThread() } #endif // Initialise the list control with the status of the files/folders below us + m_ListCtrl.Clear(); BOOL success = m_ListCtrl.GetStatus(m_pathList); //m_ListCtrl.UpdateFileList(git_revnum_t(GIT_REV_ZERO));