Merge lp:~unity-api-team/indicator-network/fix_unlock_v2 into lp:indicator-network/14.10

Proposed by Antti Kaijanmäki
Status: Merged
Approved by: Marcus Tomlinson
Approved revision: 449
Merged at revision: 450
Proposed branch: lp:~unity-api-team/indicator-network/fix_unlock_v2
Merge into: lp:indicator-network/14.10
Diff against target: 12 lines (+2/-1)
1 file modified
src/indicator/modem-manager.cpp (+2/-1)
To merge this branch: bzr merge lp:~unity-api-team/indicator-network/fix_unlock_v2
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Approve
Marcus Tomlinson (community) Approve
Review via email: mp+238415@code.launchpad.net

Commit message

deadlock if calling unlock() inside ready signal for a modem that does not require unlocking.

To post a comment you must log in.
Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

Can modem ever be null?

review: Needs Information
Revision history for this message
Antti Kaijanmäki (kaijanmaki) wrote :

> Can modem ever be null?

no.

Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

struct thing
{
    int x = 0;
};

int main(int argc, char* argv[])
{
    std::shared_ptr<thing> thingy = nullptr;
    std::list<std::shared_ptr<thing>> list;
    list.push_back(thingy);
    list.front()->x = 5; // EXPLOSION!!!
}

just saying...

Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

But... had a look at the surrounding code, looks good. +1

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/indicator/modem-manager.cpp'
2--- src/indicator/modem-manager.cpp 2014-10-14 19:54:51 +0000
3+++ src/indicator/modem-manager.cpp 2014-10-15 11:31:49 +0000
4@@ -71,7 +71,8 @@
5 if (!m_pendingUnlocks.empty()) {
6 auto modem = m_pendingUnlocks.front();
7 m_pendingUnlocks.pop_front();
8- m_unlockDialog->unlock(modem);
9+ if (modem->requiredPin().get() != Modem::PinType::none)
10+ m_unlockDialog->unlock(modem);
11 }
12 });
13

Subscribers

People subscribed via source and target branches