summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/PostProcessing.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/VideoCommon/PostProcessing.cpp')
-rw-r--r--Source/Core/VideoCommon/PostProcessing.cpp53
1 files changed, 25 insertions, 28 deletions
diff --git a/Source/Core/VideoCommon/PostProcessing.cpp b/Source/Core/VideoCommon/PostProcessing.cpp
index 7b66269ec7..e7ff694161 100644
--- a/Source/Core/VideoCommon/PostProcessing.cpp
+++ b/Source/Core/VideoCommon/PostProcessing.cpp
@@ -137,43 +137,40 @@ void PostProcessingConfiguration::LoadOptions(const std::string& code)
std::vector<GLSLStringOption> option_strings;
GLSLStringOption* current_strings = nullptr;
- while (!in.eof())
+ std::string line_str;
+ while (std::getline(in, line_str))
{
- std::string line_str;
- if (std::getline(in, line_str))
- {
- std::string_view line = line_str;
+ std::string_view line = line_str;
#ifndef _WIN32
- // Check for CRLF eol and convert it to LF
- if (!line.empty() && line.at(line.size() - 1) == '\r')
- line.remove_suffix(1);
+ // Check for CRLF eol and convert it to LF
+ if (!line.empty() && line.at(line.size() - 1) == '\r')
+ line.remove_suffix(1);
#endif
- if (!line.empty())
+ if (!line.empty())
+ {
+ if (line[0] == '[')
{
- if (line[0] == '[')
+ size_t endpos = line.find("]");
+
+ if (endpos != std::string::npos)
{
- size_t endpos = line.find("]");
-
- if (endpos != std::string::npos)
- {
- // New section!
- std::string_view sub = line.substr(1, endpos - 1);
- option_strings.push_back({std::string(sub)});
- current_strings = &option_strings.back();
- }
+ // New section!
+ std::string_view sub = line.substr(1, endpos - 1);
+ option_strings.push_back({std::string(sub)});
+ current_strings = &option_strings.back();
}
- else
+ }
+ else
+ {
+ if (current_strings)
{
- if (current_strings)
- {
- std::string key, value;
- Common::IniFile::ParseLine(line, &key, &value);
-
- if (!(key.empty() && value.empty()))
- current_strings->m_options.emplace_back(key, value);
- }
+ std::string key, value;
+ Common::IniFile::ParseLine(line, &key, &value);
+
+ if (!(key.empty() && value.empty()))
+ current_strings->m_options.emplace_back(key, value);
}
}
}