OSDN Git Service

Remove warning C4238: nonstandard extension used
authorGreyMerlin <GreyMerlin7@gmail.com>
Thu, 28 Dec 2017 01:35:28 +0000 (17:35 -0800)
committerGreyMerlin <GreyMerlin7@gmail.com>
Thu, 28 Dec 2017 01:35:28 +0000 (17:35 -0800)
 * Eliminate warnings such as ...
 `warning C4238: nonstandard extension used: class rvalue used as
lvalue`

 * These are warnings that only occur with Warning Level == 4.

Src/7zCommon.cpp
Src/MainFrm.cpp
Src/OpenView.cpp

index a6b2b15..9d64a9f 100644 (file)
@@ -524,8 +524,8 @@ bool DirItemEnumerator::MultiStepCompressArchive(LPCTSTR path)
                bool bDone = MultiStepCompressArchive(pathIntermediate);\r
                if (bDone)\r
                {\r
-                       piHandler->CompressArchive(hwndOwner, path,\r
-                               &SingleItemEnumerator(path, pathIntermediate));\r
+                       SingleItemEnumerator tmpEnumerator(path, pathIntermediate);\r
+                       piHandler->CompressArchive(hwndOwner, path, &tmpEnumerator);\r
                        DeleteFile(pathIntermediate);\r
                }\r
                else\r
index b2c1496..97cc6d0 100644 (file)
@@ -2300,8 +2300,8 @@ BOOL CMainFrame::DoOpenConflict(const String& conflictFile, const String strDesc
                                (strDesc && !strDesc[0].empty()) ? strDesc[0] : _("Theirs File"),
                                (strDesc && !strDesc[2].empty()) ? strDesc[2] : _("Mine File") };
                        DWORD dwFlags[2] = {FFILEOPEN_READONLY | FFILEOPEN_NOMRU, FFILEOPEN_NOMRU | FFILEOPEN_MODIFIED};
-                       conflictCompared = DoFileOpen(&PathContext(revFile, workFile), 
-                                               dwFlags, strDesc2);
+                       PathContext tmpPathContext(revFile, workFile);
+                       conflictCompared = DoFileOpen(&tmpPathContext, dwFlags, strDesc2);
                }
                else
                {
@@ -2309,9 +2309,9 @@ BOOL CMainFrame::DoOpenConflict(const String& conflictFile, const String strDesc
                                (strDesc && !strDesc[0].empty()) ? strDesc[0] : _("Base File"),
                                (strDesc && !strDesc[1].empty()) ? strDesc[1] : _("Theirs File"),
                                (strDesc && !strDesc[2].empty()) ? strDesc[2] : _("Mine File") };
+                       PathContext tmpPathContext(baseFile, revFile, workFile);
                        DWORD dwFlags[3] = {FFILEOPEN_READONLY | FFILEOPEN_NOMRU, FFILEOPEN_READONLY | FFILEOPEN_NOMRU, FFILEOPEN_NOMRU | FFILEOPEN_MODIFIED};
-                       conflictCompared = DoFileOpen(&PathContext(baseFile, revFile, workFile), 
-                                               dwFlags, strDesc3);
+                       conflictCompared = DoFileOpen(&tmpPathContext, dwFlags, strDesc3);
                }
        }
        else
index 4da3bd8..a56bdf2 100644 (file)
@@ -524,9 +524,11 @@ void COpenView::OnOK()
        if (GetOptionsMgr()->GetBool(OPT_CLOSE_WITH_OK))
                GetParentFrame()->PostMessage(WM_CLOSE);
 
+       PathContext tmpPathContext(pDoc->m_files);
+       PackingInfo tmpPackingInfo(pDoc->m_infoHandler);
        GetMainFrame()->DoFileOpen(
-               &PathContext(pDoc->m_files), std::array<DWORD, 3>(pDoc->m_dwFlags).data(), 
-               NULL, _T(""), !!pDoc->m_bRecurse, NULL, _T(""), &PackingInfo(pDoc->m_infoHandler));
+               &tmpPathContext, std::array<DWORD, 3>(pDoc->m_dwFlags).data(), 
+               NULL, _T(""), !!pDoc->m_bRecurse, NULL, _T(""), &tmpPackingInfo);
 }
 
 /**