aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/csvserializer.cpp
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2015-01-30 17:00:24 -0500
committerLibravatarUnit 193 <unit193@ubuntu.com>2015-01-30 17:00:24 -0500
commite4767514ed04e6a0bddf3f4a47f5f0b09e65e0ee (patch)
tree86cadc2137831d44fa29fd40a2964f7fb1326de4 /SQLiteStudio3/coreSQLiteStudio/csvserializer.cpp
parent26ddfe11c2b7fac52e5f57dcd9f5223a50b2a9a7 (diff)
parent016003905ca0e8e459e3dc33e786beda8ec92f45 (diff)
Merge tag 'upstream/3.0.2'
Upstream version 3.0.2 # gpg: Signature made Fri 30 Jan 2015 05:00:11 PM EST using RSA key ID EBE9BD91 # gpg: Good signature from "Unit 193 <unit193@gmail.com>" # gpg: aka "Unit 193 <unit193@ninthfloor.org>" # gpg: aka "Unit 193 <unit193@ubuntu.com>"
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/csvserializer.cpp')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/csvserializer.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/csvserializer.cpp b/SQLiteStudio3/coreSQLiteStudio/csvserializer.cpp
index 97cc739..3672527 100644
--- a/SQLiteStudio3/coreSQLiteStudio/csvserializer.cpp
+++ b/SQLiteStudio3/coreSQLiteStudio/csvserializer.cpp
@@ -43,12 +43,14 @@ QList<QStringList> CsvSerializer::deserialize(const QString& data, const CsvForm
int pos = 0;
int lgt = data.length();
bool quotes = false;
+ bool sepAsLast = false;
QString field = "";
QChar c;
while (pos < lgt)
{
c = data[pos];
+ sepAsLast = false;
if (!quotes && c == '"' )
{
quotes = true;
@@ -69,6 +71,7 @@ QList<QStringList> CsvSerializer::deserialize(const QString& data, const CsvForm
{
cells << field;
field.clear();
+ sepAsLast = true;
}
else if (!quotes && format.rowSeparator.contains(c))
{
@@ -84,7 +87,7 @@ QList<QStringList> CsvSerializer::deserialize(const QString& data, const CsvForm
pos++;
}
- if (field.size() > 0)
+ if (field.size() > 0 || sepAsLast)
cells << field;
if (cells.size() > 0)