From d6aab003357eaddae3f573f86bfbd9d7b3b506dd Mon Sep 17 00:00:00 2001 From: john30 Date: Sat, 30 Jan 2016 17:35:37 +0100 Subject: [PATCH] detect lines with blank fields only --- src/lib/ebus/filereader.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/ebus/filereader.h b/src/lib/ebus/filereader.h index 46240c70..43d3eb4d 100644 --- a/src/lib/ebus/filereader.h +++ b/src/lib/ebus/filereader.h @@ -119,8 +119,7 @@ public: vector< vector > defaults; while (getline(ifs, line) != 0) { lineNo++; - splitFields(line, row); - if (row.empty()) + if (!splitFields(line, row) || row.empty()) continue; result_t result; @@ -244,6 +243,7 @@ public: bool quotedText = false, wasQuoted = false; ostringstream field; char prev = FIELD_SEPARATOR; + bool empty = true; for (size_t pos = 0; pos < length; pos++) { char ch = line[pos]; switch (ch) @@ -254,6 +254,7 @@ public: } else { string str = field.str(); trim(str); + empty &= str.empty(); row.push_back(str); field.str(""); wasQuoted = false; @@ -285,6 +286,8 @@ public: } string str = field.str(); trim(str); + if (empty && str.empty()) + return false; row.push_back(str); return true; }