From a7cd976ca45c83fdc2c0ba1142443bc72157a2ee Mon Sep 17 00:00:00 2001 From: Manuel Nickschas Date: Wed, 18 Mar 2009 15:50:41 +0100 Subject: [PATCH] Prevent AliasesSettingsPage from crashing when disconnected from core --- src/qtui/settingspages/aliasesmodel.cpp | 4 ++-- src/qtui/settingspages/aliasesmodel.h | 16 ++++++++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/src/qtui/settingspages/aliasesmodel.cpp b/src/qtui/settingspages/aliasesmodel.cpp index ded0600a..416414d5 100644 --- a/src/qtui/settingspages/aliasesmodel.cpp +++ b/src/qtui/settingspages/aliasesmodel.cpp @@ -226,8 +226,8 @@ void AliasesModel::commit() { } void AliasesModel::initDone() { - reset(); _modelReady = true; + reset(); emit modelReady(true); } @@ -242,7 +242,7 @@ void AliasesModel::clientConnected() { void AliasesModel::clientDisconnected() { // clear _clonedAliasManager = ClientAliasManager(); - reset(); _modelReady = false; + reset(); emit modelReady(false); } diff --git a/src/qtui/settingspages/aliasesmodel.h b/src/qtui/settingspages/aliasesmodel.h index c6e82951..74a0cfd6 100644 --- a/src/qtui/settingspages/aliasesmodel.h +++ b/src/qtui/settingspages/aliasesmodel.h @@ -43,8 +43,8 @@ public: inline QModelIndex parent(const QModelIndex &) const { return QModelIndex(); } - inline int rowCount(const QModelIndex &parent = QModelIndex()) const { Q_UNUSED(parent) return aliasManager().count(); } - inline int columnCount(const QModelIndex &parent = QModelIndex()) const { Q_UNUSED(parent) return 2; } + inline int rowCount(const QModelIndex &parent = QModelIndex()) const; + inline int columnCount(const QModelIndex &parent = QModelIndex()) const; inline bool configChanged() const { return _configChanged; } inline bool isReady() const { return _modelReady; } @@ -75,4 +75,16 @@ private slots: void initDone(); }; +// Inlines +int AliasesModel::rowCount(const QModelIndex &parent) const { + Q_UNUSED(parent); + return isReady() ? aliasManager().count() : 0; +} + +int AliasesModel::columnCount(const QModelIndex &parent) const { + Q_UNUSED(parent); + return isReady() ? 2 : 0; +} + + #endif //ALIASESMODEL_H -- 2.20.1