diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/MFCDialog/CMakeCommandLineInfo.cpp | 55 |
1 files changed, 30 insertions, 25 deletions
diff --git a/Source/MFCDialog/CMakeCommandLineInfo.cpp b/Source/MFCDialog/CMakeCommandLineInfo.cpp index 26c705b818..8ef3c43a28 100644 --- a/Source/MFCDialog/CMakeCommandLineInfo.cpp +++ b/Source/MFCDialog/CMakeCommandLineInfo.cpp @@ -54,33 +54,38 @@ void CMakeCommandLineInfo::ParseParam(LPCTSTR lpszParam, BOOL bFlag, BOOL bLast) { CString sParam(lpszParam); // Single letter valued flag like /B=value or /B:value + CString value; if (sParam[1] == '=' || sParam[1] == ':') { - CString value(sParam.Right(sParam.GetLength() - 2)); - int res; - switch (sParam[0]) - { - case 'A': - res = CMakeCommandLineInfo::GetBoolValue(value); - if (res == 1) - { - m_AdvancedValues = TRUE; - } - else if (res == -1) - { - m_AdvancedValues = FALSE; - } - break; - case 'B': - m_WhereBuild = value; - break; - case 'G': - m_GeneratorChoiceString = value; - break; - case 'H': - m_WhereSource = value; - break; - } + value = sParam.Right(sParam.GetLength() - 2); + } + else + { + value = sParam.Right(sParam.GetLength()-1); + } + int res; + switch (sParam[0]) + { + case 'A': + res = CMakeCommandLineInfo::GetBoolValue(value); + if (res == 1) + { + m_AdvancedValues = TRUE; + } + else if (res == -1) + { + m_AdvancedValues = FALSE; + } + break; + case 'B': + m_WhereBuild = value; + break; + case 'G': + m_GeneratorChoiceString = value; + break; + case 'H': + m_WhereSource = value; + break; } } |