shill: cellular: fix SIM object proxy initialization and reset
CL:854734 fixed an inconsistency between SIM object path and proxy held
by CellularCapabilityUniversal by clearing both out in
CellularCapabilityUniversal::ReleaseProxies(). However, doing so also
inappropriately resets the SIM presence flag. Unlike other ModemManager
interface proxies, the SIM object proxy is re-initialized when the SIM
object path changes, so it shouldn't be initialized or reset by
CellularCapabilityUniversal::InitProxies() or
CellularCapabilityUniversal::ReleaseProxies().
BUG=chromium:801711
TEST=Run unit tests.
TEST=Verify the issue described in b:69025060 is addressed on a DUT with
a cellular modem:
- Enable SIM PIN locking.
- Suspend and then resume the DUT.
- Disable SIM PIN locking.
TEST=Disable 'Mobile Data' from the UI and verify that the UI doesn't
show any 'SIM is missing' message. Verify that 'Mobile Data' can be
re-enabled.
Change-Id: Ibcf55ea67a7c7e8e4f174173fcd036b39d9e4763
Reviewed-on: https://chromium-review.googlesource.com/865760
Commit-Ready: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
Reviewed-by: Eric Caruso <ejcaruso@chromium.org>
(cherry picked from commit 5c2bf0adaf076289ea92c90910b44af14dc2aa8d)
2 files changed