diff -Nru ktp-contact-list-0.8.1/debian/changelog ktp-contact-list-0.8.1/debian/changelog --- ktp-contact-list-0.8.1/debian/changelog 2014-04-28 17:33:01.000000000 +0000 +++ ktp-contact-list-0.8.1/debian/changelog 2014-05-13 15:51:45.000000000 +0000 @@ -1,3 +1,10 @@ +ktp-contact-list (0.8.1-0ubuntu0.2) trusty; urgency=medium + + * Add upstream_Dont-crash-on-account-manager-not-ready.diff to fix + crash when mission-control-5 is broken (LP: #1319085) + + -- Rohan Garg Tue, 13 May 2014 17:51:19 +0200 + ktp-contact-list (0.8.1-0ubuntu0.1) trusty; urgency=medium * No change backport to trusty (LP: #1313611) diff -Nru ktp-contact-list-0.8.1/debian/patches/series ktp-contact-list-0.8.1/debian/patches/series --- ktp-contact-list-0.8.1/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 +++ ktp-contact-list-0.8.1/debian/patches/series 2014-05-13 15:34:16.000000000 +0000 @@ -0,0 +1 @@ +upstream_Dont-crash-on-account-manager-not-ready.diff diff -Nru ktp-contact-list-0.8.1/debian/patches/upstream_Dont-crash-on-account-manager-not-ready.diff ktp-contact-list-0.8.1/debian/patches/upstream_Dont-crash-on-account-manager-not-ready.diff --- ktp-contact-list-0.8.1/debian/patches/upstream_Dont-crash-on-account-manager-not-ready.diff 1970-01-01 00:00:00.000000000 +0000 +++ ktp-contact-list-0.8.1/debian/patches/upstream_Dont-crash-on-account-manager-not-ready.diff 2014-05-13 15:24:09.000000000 +0000 @@ -0,0 +1,80 @@ +From: David Edmundson +Date: Tue, 13 May 2014 10:32:25 +0000 +Subject: Do not load dialogs if account manager is not ready +X-Git-Url: http://quickgit.kde.org/?p=ktp-contact-list.git&a=commitdiff&h=d2e4f977a9affc55ad8ab80565a4242a59c5b860 +--- +Do not load dialogs if account manager is not ready + +Conflicts: +main-widget.cpp +--- + + +--- a/main-widget.cpp ++++ b/main-widget.cpp +@@ -201,16 +201,20 @@ + + void MainWidget::onAddContactRequest() + { +- KTp::AddContactDialog *dialog = new KTp::AddContactDialog(m_accountManager, this); +- dialog->setAttribute(Qt::WA_DeleteOnClose); +- dialog->show(); ++ if (m_accountManager->isReady()) { ++ KTp::AddContactDialog *dialog = new KTp::AddContactDialog(m_accountManager, this); ++ dialog->setAttribute(Qt::WA_DeleteOnClose); ++ dialog->show(); ++ } + } + + void MainWidget::onStartChatRequest() + { +- KTp::StartChatDialog *dialog = new KTp::StartChatDialog(m_accountManager, this); +- dialog->setAttribute(Qt::WA_DeleteOnClose); +- dialog->show(); ++ if (m_accountManager->isReady()) { ++ KTp::StartChatDialog *dialog = new KTp::StartChatDialog(m_accountManager, this); ++ dialog->setAttribute(Qt::WA_DeleteOnClose); ++ dialog->show(); ++ } + } + + +@@ -248,21 +252,22 @@ + + void MainWidget::onJoinChatRoomRequested() + { +- QWeakPointer dialog = new KTp::JoinChatRoomDialog(m_accountManager); +- +- if (dialog.data()->exec() == QDialog::Accepted) { +- Tp::AccountPtr account = dialog.data()->selectedAccount(); +- +- // check account validity. Should NEVER be invalid +- if (!account.isNull()) { +- // ensure chat room +- Tp::PendingChannelRequest *channelRequest = KTp::Actions::startGroupChat(account, dialog.data()->selectedChatRoom()); +- +- connect(channelRequest, SIGNAL(finished(Tp::PendingOperation*)), SLOT(onGenericOperationFinished(Tp::PendingOperation*))); +- } +- } +- +- delete dialog.data(); ++ if (m_accountManager->isReady()) { ++ QWeakPointer dialog = new KTp::JoinChatRoomDialog(m_accountManager); ++ ++ if (dialog.data()->exec() == QDialog::Accepted) { ++ Tp::AccountPtr account = dialog.data()->selectedAccount(); ++ ++ // check account validity. Should NEVER be invalid ++ if (!account.isNull()) { ++ // ensure chat room ++ Tp::PendingChannelRequest *channelRequest = KTp::Actions::startGroupChat(account, dialog.data()->selectedChatRoom()); ++ ++ connect(channelRequest, SIGNAL(finished(Tp::PendingOperation*)), SLOT(onGenericOperationFinished(Tp::PendingOperation*))); ++ } ++ } ++ delete dialog.data(); ++ } + } + + void MainWidget::onMakeCallRequested() +