Additional change to 720ed17: Now the sections that the included file has are placed to the last position if @include is placed on the last section in the original file.

This commit is contained in:
spx 2012-07-20 02:33:52 -07:00
parent 071b6f78bb
commit b66875d8ad

View File

@ -1326,6 +1326,16 @@ void CConfigParser::ReadIniFile(const std::wstring& iniFile, LPCTSTR skinSection
if (resetInsertPos)
{
auto jt = iter;
if (++jt == sections.end()) // Special case: @include was used in the last section of the current file
{
// Set the insertion place to the last
m_SectionInsertPos = m_Sections.end();
resetInsertPos = false;
}
else
{
// Find the appropriate insertion place
for (auto it = m_Sections.cbegin(); it != m_Sections.cend(); ++it)
{
if (_wcsicmp((*it).c_str(), sectionName) == 0)
@ -1336,6 +1346,7 @@ void CConfigParser::ReadIniFile(const std::wstring& iniFile, LPCTSTR skinSection
}
}
}
}
ReadIniFile(value, skinSection, depth + 1);
}