Skip to content

Commit

Permalink
Merge branch 'avoid_unnecessary_instantiation' into 'master'
Browse files Browse the repository at this point in the history
[nemo-qml-plugin-calendar] Avoid unnecessary instantiation of calendar manager.…

See merge request mer-core/nemo-qml-plugin-calendar!29
  • Loading branch information
pvuorela committed Nov 20, 2018
2 parents 0e30efe + b8a0a69 commit 3890a38
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 4 deletions.
5 changes: 4 additions & 1 deletion src/calendarinvitationquery.cpp
Expand Up @@ -44,7 +44,10 @@ NemoCalendarInvitationQuery::NemoCalendarInvitationQuery()

NemoCalendarInvitationQuery::~NemoCalendarInvitationQuery()
{
NemoCalendarManager::instance()->unRegisterInvitationQuery(this);
NemoCalendarManager *manager = NemoCalendarManager::instance(false);
if (manager) {
manager->unRegisterInvitationQuery(this);
}
}

QString NemoCalendarInvitationQuery::notebookUid() const
Expand Down
4 changes: 2 additions & 2 deletions src/calendarmanager.cpp
Expand Up @@ -98,10 +98,10 @@ NemoCalendarManager::NemoCalendarManager() :
connect(mTimer, SIGNAL(timeout()), this, SLOT(timeout()));
}

NemoCalendarManager *NemoCalendarManager::instance()
NemoCalendarManager *NemoCalendarManager::instance(bool createIfNeeded)
{
static NemoCalendarManager *managerInstance;
if (!managerInstance)
if (!managerInstance && createIfNeeded)
managerInstance = new NemoCalendarManager;

return managerInstance;
Expand Down
2 changes: 1 addition & 1 deletion src/calendarmanager.h
Expand Up @@ -59,7 +59,7 @@ class NemoCalendarManager : public QObject
NemoCalendarManager();

public:
static NemoCalendarManager *instance();
static NemoCalendarManager *instance(bool createIfNeeded = true);
~NemoCalendarManager();

NemoCalendarEvent* eventObject(const QString &eventUid, const KDateTime &recurrenceId);
Expand Down

0 comments on commit 3890a38

Please sign in to comment.