diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2020-02-28 14:01:47 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2020-02-28 08:12:26 -0800 |
commit | f1e1a9634a842f2d218b4aecee1cf18880baf2b8 (patch) | |
tree | 1d95b3357ca0dc9d145b7531da00cac1a19b1263 | |
parent | ee1c438d4161ab6009781ff358bec922d5e811c2 (diff) | |
download | subsurface-f1e1a9634a842f2d218b4aecee1cf18880baf2b8.tar.gz |
cleanup: simplify string-comparison in CylindersModel::setData()
Convert to QString instead of a QByteArray. Use qPrintable()
instead of data(). This might do one more UTF16->UTF8 conversion.
However, this is completely irrelevant, since we don't change
the type of a cylinder in a tight loop.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
-rw-r--r-- | qt-models/cylindermodel.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/qt-models/cylindermodel.cpp b/qt-models/cylindermodel.cpp index 554d81cc7..641fe3f18 100644 --- a/qt-models/cylindermodel.cpp +++ b/qt-models/cylindermodel.cpp @@ -8,6 +8,7 @@ #include "qt-models/diveplannermodel.h" #include "core/gettextfromc.h" #include "core/subsurface-qt/divelistnotifier.h" +#include "core/subsurface-string.h" CylindersModel::CylindersModel(QObject *parent) : CleanerTableModel(parent), @@ -317,13 +318,11 @@ bool CylindersModel::setData(const QModelIndex &index, const QVariant &value, in } switch (index.column()) { - case TYPE: - if (!value.isNull()) { - QByteArray ba = value.toByteArray(); - const char *text = ba.constData(); - if (!cyl->type.description || strcmp(cyl->type.description, text)) { + case TYPE: { + QString type = value.toString(); + if (!same_string(qPrintable(type), cyl->type.description)) { free((void *)cyl->type.description); - cyl->type.description = strdup(text); + cyl->type.description = strdup(qPrintable(type)); changed = true; } } |