Make DefinesProxy use ContinueDefine method instead of duplicated code

This commit is contained in:
Jan 2023-12-23 13:54:45 +01:00
parent 8d0147d6cf
commit 12bb974324
No known key found for this signature in database
GPG Key ID: 44B581F78FF5C57C

View File

@ -240,26 +240,11 @@ bool DefinesStreamProxy::MatchDefineDirective(const ParserLine& line, const unsi
MatchDefineParameters(line, currentPos);
SkipWhitespace(line, currentPos);
const auto lineEndEscapePos = GetLineEndEscapePos(line);
if (lineEndEscapePos < 0)
{
std::string value;
if (currentPos < line.m_line.size())
value = line.m_line.substr(currentPos);
Define define(name, value);
define.IdentifyParameters(m_current_define_parameters);
AddDefine(std::move(define));
}
else
{
m_in_define = true;
m_current_define = Define(name, std::string());
m_current_define_value.str(std::string());
if (currentPos < line.m_line.size() && (currentPos) < static_cast<unsigned>(lineEndEscapePos))
m_current_define_value << line.m_line.substr(currentPos, static_cast<unsigned>(lineEndEscapePos) - (currentPos));
}
ContinueDefine(line, currentPos);
return true;
}