m_From=CTime(1970,1,2,0,0,0);\r
m_To=CTime::GetCurrentTime();\r
m_bAllBranch = FALSE;\r
+ m_LoadingThread = NULL;\r
+\r
+ m_bExitThread=FALSE;\r
}\r
\r
CGitLogListBase::~CGitLogListBase()\r
{\r
m_ProcCallBack=proc;\r
m_ProcData=data;\r
-\r
+ m_bExitThread=FALSE;\r
InterlockedExchange(&m_bThreadRunning, TRUE);\r
InterlockedExchange(&m_bNoDispUpdates, TRUE);\r
- if (AfxBeginThread(LogThreadEntry, this)==NULL)\r
+ m_LoadingThread = AfxBeginThread(LogThreadEntry, this);\r
+ if (m_LoadingThread ==NULL)\r
{\r
InterlockedExchange(&m_bThreadRunning, FALSE);\r
InterlockedExchange(&m_bNoDispUpdates, FALSE);\r
\r
if(m_ProcCallBack)\r
m_ProcCallBack(m_ProcData,percent);\r
+\r
+ if(m_bExitThread)\r
+ break;\r
}\r
if(updated==m_logEntries.size())\r
break;\r