OSDN Git Service

Fix the problem that the /fr option is ignored when specifying the command line optio...
authorTakashi Sawanaka <sdottaka@users.sourceforge.net>
Sat, 22 Apr 2023 03:26:16 +0000 (12:26 +0900)
committerTakashi Sawanaka <sdottaka@users.sourceforge.net>
Sat, 22 Apr 2023 03:26:16 +0000 (12:26 +0900)
Src/MainFrm.cpp
Src/MainFrm.h
Src/Merge.cpp

index b759f9d..e2be9d0 100644 (file)
@@ -1974,7 +1974,8 @@ void CMainFrame::OnSaveConfigData()
  * @sa CMergeDoc::OpenDocs()
  * @sa CMergeDoc::TrySaveAs()
  */
-bool CMainFrame::DoFileNew(UINT nID, int nPanes, const String strDesc[],
+bool CMainFrame::DoFileNew(UINT nID, int nPanes,
+       const fileopenflags_t dwFlags[], const String strDesc[],
        const PrediffingInfo *infoPrediffer /*= nullptr*/,
        const OpenFileParams *pOpenParams)
 {
@@ -1982,7 +1983,6 @@ bool CMainFrame::DoFileNew(UINT nID, int nPanes, const String strDesc[],
        
        // Load emptyfile descriptors and open empty docs
        // Use default codepage
-       fileopenflags_t dwFlags[3] = {0, 0, 0};
        FileLocation fileloc[3];
        String strDesc2[3];
        if (nPanes == 2)
index edac4a6..02a55ac 100644 (file)
@@ -154,7 +154,8 @@ public:
                const String& sReportFile = _T(""),
                const PackingInfo* infoUnpacker = nullptr, const PrediffingInfo * infoPrediffer = nullptr,
                const OpenFileParams *pOpenParams = nullptr);
-       bool DoFileNew(UINT nID, int nPanes, const String strDesc[] = nullptr,
+       bool DoFileNew(UINT nID, int nPanes,
+               const fileopenflags_t dwFlags[] = nullptr, const String strDesc[] = nullptr,
                const PrediffingInfo * infoPrediffer = nullptr,
                const OpenFileParams *pOpenParams = nullptr);
        bool DoOpenConflict(const String& conflictFile, const String strDesc[] = nullptr, bool checked = false);
index 2cfa13e..f6f2da3 100644 (file)
@@ -881,7 +881,8 @@ bool CMergeApp::ParseArgsAndDoOpen(MergeCmdLineInfo& cmdInfo, CMainFrame* pMainF
                {
                        if (cmdInfo.m_bNewCompare)
                        {
-                               bCompared = pMainFrame->DoFileNew(nID, 2, strDesc, infoPrediffer.get(), pOpenParams.get());
+                               fileopenflags_t dwFlags[3] = {cmdInfo.m_dwLeftFlags, cmdInfo.m_dwRightFlags, FFILEOPEN_NONE};
+                               bCompared = pMainFrame->DoFileNew(nID, 2, dwFlags, strDesc, infoPrediffer.get(), pOpenParams.get());
                        }
                        else if (cmdInfo.m_bClipboardCompare)
                        {