OSDN Git Service

Workaround Show Message Problem
authorFrank Li <lznuaa@gmail.com>
Thu, 27 Nov 2008 14:14:40 +0000 (22:14 +0800)
committerFrank Li <lznuaa@gmail.com>
Thu, 27 Nov 2008 14:14:40 +0000 (22:14 +0800)
TortoiseProc/CommitDlg.cpp
Utils/MiscUI/MessageBox.cpp

index 4ba1d6a..8bd02b2 100644 (file)
@@ -421,21 +421,21 @@ void CCommitDlg::OnOK()
        {\r
                cmd.Format(_T("git.cmd update-index -- %s"),checkedfiles);\r
                g_Git.Run(cmd,&out);\r
-       }\r
 \r
-       CString tempfile=::GetTempFile();\r
-       CStdioFile file(tempfile,CFile::modeReadWrite|CFile::modeCreate );\r
-       file.WriteString(m_sLogMessage);\r
-       file.Close();\r
+               CString tempfile=::GetTempFile();\r
+               CStdioFile file(tempfile,CFile::modeReadWrite|CFile::modeCreate );\r
+               file.WriteString(m_sLogMessage);\r
+               file.Close();\r
        \r
-       out =_T("");\r
-       cmd.Format(_T("git.cmd commit -F \"%s\""), tempfile);\r
-       g_Git.Run(cmd,&out);\r
+               out =_T("");\r
+               cmd.Format(_T("git.cmd commit -F \"%s\""), tempfile);\r
+               g_Git.Run(cmd,&out);\r
        \r
-       CFile::Remove(tempfile);\r
-\r
-       CMessageBox::Show(this->m_hWnd, out, _T("Commit Finish"), MB_YESNO | MB_ICONINFORMATION);\r
+               CFile::Remove(tempfile);\r
 \r
+               CMessageBox::Show(this->m_hWnd, out, _T("Commit Finish"), MB_YESNO | MB_ICONINFORMATION);\r
+       }else\r
+               CMessageBox::Show(this->m_hWnd, _T("Nothing Commit"), _T("Commit Finish"), MB_YESNO | MB_ICONINFORMATION);\r
 #if 0\r
        if (m_pathwatcher.GetNumberOfChangedPaths() && m_bRecursive)\r
        {\r
index 6a086cc..8a5c73d 100644 (file)
@@ -431,8 +431,20 @@ int CMessageBox::FillBoxStandard(UINT uType)
 UINT CMessageBox::GoModal(CWnd * pWnd, const CString& title, const CString& msg, int nDefaultButton)\r
 {\r
        NONCLIENTMETRICS ncm;\r
+       memset(&ncm,0,sizeof(NONCLIENTMETRICS));\r
        ncm.cbSize = sizeof(NONCLIENTMETRICS);\r
-       VERIFY(SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS), &ncm, 0));\r
+       SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(NONCLIENTMETRICS), &ncm, 0);\r
+       DWORD nErrorNo = GetLastError ( ); // µÃµ½´íÎó´úÂë\r
+    LPSTR lpBuffer;    \r
+      FormatMessage ( FORMAT_MESSAGE_ALLOCATE_BUFFER  | \r
+          FORMAT_MESSAGE_IGNORE_INSERTS  | \r
+         FORMAT_MESSAGE_FROM_SYSTEM,\r
+         NULL,\r
+         nErrorNo, // ´ËÄË´íÎó´úÂ룬ͨ³£ÔÚ³ÌÐòÖпÉÓÉ GetLastError()µÃÖ®\r
+         LANG_NEUTRAL,\r
+         (LPTSTR) & lpBuffer,\r
+          0 ,\r
+         NULL );\r
     memcpy(&m_LogFont, &(ncm.lfMessageFont), sizeof(LOGFONT));\r
 \r
        //the problem with the LOGFONT lfHeight is that it is not in pixels,\r