OSDN Git Service

Update version number to 1.2.1.0
[tortoisegit/TortoiseGitJp.git] / src / TortoiseGitBlame / TortoiseGitBlameDoc.cpp
index 4105e83..2df2566 100644 (file)
@@ -88,11 +88,25 @@ BOOL CTortoiseGitBlameDoc::OnOpenDocument(LPCTSTR lpszPathName,CString Rev)
        {\r
                m_IsGitFile=TRUE;\r
                g_Git.m_CurrentDir=topdir;\r
-               GetMainFrame()->m_wndOutput.LoadHistory(lpszPathName);\r
+\r
+               CString PathName=lpszPathName;\r
+               if(topdir[topdir.GetLength()-1] == _T('\\') || \r
+                       topdir[topdir.GetLength()-1] == _T('/'))\r
+                       PathName=PathName.Right(PathName.GetLength()-g_Git.m_CurrentDir.GetLength());\r
+               else\r
+                       PathName=PathName.Right(PathName.GetLength()-g_Git.m_CurrentDir.GetLength()-1);\r
+\r
+               CTGitPath path;\r
+               path.SetFromWin(PathName);\r
+\r
+               if(!g_Git.m_CurrentDir.IsEmpty())\r
+                       SetCurrentDirectory(g_Git.m_CurrentDir);\r
                \r
+               m_GitPath = path;\r
+               GetMainFrame()->m_wndOutput.LoadHistory(path.GetGitPathString());\r
+       \r
                CString cmd;\r
-               CTGitPath path;\r
-               path.SetFromWin(lpszPathName);\r
+               \r
                cmd.Format(_T("git.exe blame -s -l %s -- \"%s\""),Rev,path.GetGitPathString());\r
                m_BlameData.Empty();\r
                if(g_Git.Run(cmd,&m_BlameData,CP_UTF8))\r