1
0

Ignore whitespace only lines in brewing and furnace recipes (#4332)

This commit is contained in:
peterbell10
2019-06-11 13:39:44 +01:00
committed by GitHub
parent 52e6543ba5
commit 9dc1343bda
4 changed files with 19 additions and 9 deletions

View File

@@ -68,14 +68,6 @@ void cFurnaceRecipe::ReloadRecipes(void)
while (std::getline(f, ParsingLine))
{
LineNum++;
if (ParsingLine.empty())
{
// There is a problem here on Android. Text files transferred from another OS may have a newline representation Android's implementation of getline doesn't expect
// Thus, part of a newline may be left in ParsingLine. ::empty() thus thinks the string isn't empty, and the below code outputs interesting errors since it was passed a nearly empty string
// Ref: https://stackoverflow.com/questions/6089231/getting-std-ifstream-to-handle-lf-cr-and-crlf
// TODO: There is a solution in the above reference, but it isn't very pretty. Fix it somehow.
continue;
}
// Remove comments from the line:
size_t FirstCommentSymbol = ParsingLine.find('#');
@@ -84,6 +76,12 @@ void cFurnaceRecipe::ReloadRecipes(void)
ParsingLine.erase(ParsingLine.begin() + static_cast<const long>(FirstCommentSymbol), ParsingLine.end());
}
if (IsOnlyWhitespace(ParsingLine))
{
// Ignore empty and whitespace only lines
continue;
}
switch (ParsingLine[0])
{
case '#':