From 69219c18a7b42fd29cbe4d8d30bcbb35edbd3c58 Mon Sep 17 00:00:00 2001 From: Capostrophic Date: Sat, 28 Mar 2020 19:15:43 +0300 Subject: [PATCH] Make sure blank lines at the end of settings.cfg don't disappear --- components/settings/parser.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/components/settings/parser.cpp b/components/settings/parser.cpp index 1dcb0fd8d..9693bf511 100644 --- a/components/settings/parser.cpp +++ b/components/settings/parser.cpp @@ -103,18 +103,18 @@ void Settings::SettingsFileParser::saveSettingsFile(const std::string& file, con // The current character position in the line. size_t i = 0; - // Don't add additional newlines at the end of the file. - if (istream.eof()) continue; - // An empty line was queued. if (emptyLineQueued) { emptyLineQueued = false; // We're still going through the current category, so we should copy it. - if (currentCategory.empty() || line[i] != '[') + if (currentCategory.empty() || istream.eof() || line[i] != '[') ostream << std::endl; } + // Don't add additional newlines at the end of the file otherwise. + if (istream.eof()) continue; + // Queue entirely blank lines to add them if desired. if (!skipWhiteSpace(i, line)) {