\r
BOOL CGitLogListBase::GetShortName(CString ref, CString &shortname,CString prefix)\r
{\r
- TRACE(_T("%s %s\r\n"),ref,prefix);\r
+ //TRACE(_T("%s %s\r\n"),ref,prefix);\r
if(ref.Left(prefix.GetLength()) == prefix)\r
{\r
shortname = ref.Right(ref.GetLength()-prefix.GetLength());\r
rect.right=second.left;\r
}\r
\r
- TRACE(_T("A Graphic left %d right %d\r\n"),rect.left,rect.right);\r
+ //TRACE(_T("A Graphic left %d right %d\r\n"),rect.left,rect.right);\r
FillBackGround(pLVCD->nmcd.hdc, (INT_PTR)pLVCD->nmcd.dwItemSpec,rect);\r
\r
GitRev* data = (GitRev*)m_arShownList.GetAt(pLVCD->nmcd.dwItemSpec);\r
GitRev* pLogEntry = reinterpret_cast<GitRev *>(m_arShownList.GetAt(pLVCD->nmcd.dwItemSpec));\r
CRect rect;\r
GetSubItemRect(pLVCD->nmcd.dwItemSpec, pLVCD->iSubItem, LVIR_BOUNDS, rect);\r
- TRACE(_T("Action left %d right %d\r\n"),rect.left,rect.right);\r
+ //TRACE(_T("Action left %d right %d\r\n"),rect.left,rect.right);\r
// Get the selected state of the\r
// item being drawn. \r
\r
if(m_IsOldFirst)\r
{\r
m_logEntries.GetGitRevAt(m_logEntries.size()-i-1).m_IsFull=TRUE;\r
- this->m_arShownList.Add(&m_logEntries[m_logEntries.size()-i-1]);\r
+ this->m_arShownList.Add(&m_logEntries.GetGitRevAt(m_logEntries.size()-i-1));\r
\r
}else\r
{\r
m_logEntries.GetGitRevAt(i).m_IsFull=TRUE;\r
- this->m_arShownList.Add(&m_logEntries[i]);\r
+ this->m_arShownList.Add(&m_logEntries.GetGitRevAt(i));\r
}\r
}\r
\r
this->m_logEntries.ClearAll();\r
git_init();\r
\r
+ this->m_LogCache.ClearAllParent();\r
+\r
m_LogCache.FetchCacheIndex(g_Git.m_CurrentDir);\r
\r
CTGitPath *path;\r
if(BeginFetchLog())\r
return -1;\r
\r
+ TRACE(_T("\n===Begin===\n"));\r
//Update work copy item;\r
if( m_logEntries.size() > 0)\r
{\r
break;\r
\r
CGitHash hash = (char*)commit.m_hash ;\r
-\r
\r
GitRev *pRev = m_LogCache.GetCacheData(hash);\r
\r
{\r
pRev->ParserFromCommit(&commit);\r
pRev->ParserParentFromCommit(&commit);\r
-\r
pRev->SafeFetchFullInfo(&g_Git);\r
- git_free_commit(&commit);\r
- \r
+ \r
}else\r
{\r
ASSERT(pRev->m_CommitHash == hash);\r
pRev->ParserParentFromCommit(&commit);\r
}\r
+#ifdef DEBUG \r
+ pRev->DbgPrint();\r
+ TRACE(_T("\n"));\r
+#endif\r
+ git_free_commit(&commit);\r
\r
this->m_critSec.Lock();\r
m_logEntries.push_back(hash);\r
m_arShownList.Add(pRev);\r
this->m_critSec.Unlock();\r
\r
- if(t2-t1>500 )\r
+ if(t2-t1>500 || (m_logEntries.size()-oldsize >100))\r
{\r
//update UI\r
int percent=m_logEntries.size()*100/total + GITLOG_START+1;\r
if(percent > 99)\r
percent =99;\r
+ if(percent < GITLOG_START)\r
+ percent = GITLOG_START +1;\r
\r
oldsize = m_logEntries.size();\r
PostMessage(LVM_SETITEMCOUNT, (WPARAM) this->m_logEntries.size(),(LPARAM) LVSICF_NOINVALIDATEALL|LVSICF_NOSCROLL);\r
}\r
if ((m_nSelectedFilter == LOGFILTER_ALL)||(m_nSelectedFilter == LOGFILTER_REVS))\r
{\r
- sRev.Format(_T("%s"), m_logEntries.GetGitRevAt(i).m_CommitHash);\r
+ sRev.Format(_T("%s"), m_logEntries.GetGitRevAt(i).m_CommitHash.ToString());\r
if ((sRev.Find(find) >= 0)&&(IsEntryInDateRange(i)))\r
{\r
pShownlist->Add(&m_logEntries.GetGitRevAt(i));\r