diff options
Diffstat (limited to 'qt-models/divelocationmodel.cpp')
-rw-r--r-- | qt-models/divelocationmodel.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/qt-models/divelocationmodel.cpp b/qt-models/divelocationmodel.cpp index edf15b707..3e17f4fe2 100644 --- a/qt-models/divelocationmodel.cpp +++ b/qt-models/divelocationmodel.cpp @@ -29,6 +29,9 @@ QVariant LocationInformationModel::data(const QModelIndex &index, int role) cons return QVariant(); struct dive_site *ds = get_dive_site(index.row()); + if (!ds) + return QVariant(); + switch(role) { case Qt::DisplayRole : return qPrintable(ds->name); case DIVE_SITE_UUID : return ds->uuid; @@ -77,7 +80,8 @@ bool LocationInformationModel::removeRows(int row, int count, const QModelIndex beginRemoveRows(QModelIndex(), row, row); struct dive_site *ds = get_dive_site(row); - delete_dive_site(ds->uuid); + if (ds) + delete_dive_site(ds->uuid); endRemoveRows(); return true; } |