summaryrefslogtreecommitdiffstats
path: root/chromeos
diff options
context:
space:
mode:
authorarmansito@chromium.org <armansito@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-28 21:15:57 +0000
committerarmansito@chromium.org <armansito@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-10-28 21:15:57 +0000
commitba570755b30f617e177c4575d34b0aecfccc3ada (patch)
treef1735a43de36264e4fbae5725722424e1e63cc99 /chromeos
parentf4d43cbf80508134e0cad7e68946d95a61075a87 (diff)
downloadchromium_src-ba570755b30f617e177c4575d34b0aecfccc3ada.zip
chromium_src-ba570755b30f617e177c4575d34b0aecfccc3ada.tar.gz
chromium_src-ba570755b30f617e177c4575d34b0aecfccc3ada.tar.bz2
Fix NFC related crash in DBusThreadManager destructor.
DBusThreadManager declared its pointers to NfcAdapterClient and NfcManagerClient in the incorrect order, without respecting the NfcAdapterClient dependency on NfcManagerClient. Fixed it, so that NfcManagerClient will be cleaned up after NfcAdapterClient. BUG=312243 R=stevenjb@chromium.org Review URL: https://codereview.chromium.org/49273002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@231403 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chromeos')
-rw-r--r--chromeos/dbus/dbus_thread_manager.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/chromeos/dbus/dbus_thread_manager.cc b/chromeos/dbus/dbus_thread_manager.cc
index 21794b5..b98e07c 100644
--- a/chromeos/dbus/dbus_thread_manager.cc
+++ b/chromeos/dbus/dbus_thread_manager.cc
@@ -404,8 +404,11 @@ class DBusThreadManagerImpl : public DBusThreadManager {
scoped_ptr<ImageBurnerClient> image_burner_client_;
scoped_ptr<IntrospectableClient> introspectable_client_;
scoped_ptr<ModemMessagingClient> modem_messaging_client_;
- scoped_ptr<NfcAdapterClient> nfc_adapter_client_;
+ // NfcAdapterClient depends on NfcManagerClient. We declare NfcManagerClient
+ // first, so that it won't be deallocated before NfcAdapterClient is done
+ // cleaning up.
scoped_ptr<NfcManagerClient> nfc_manager_client_;
+ scoped_ptr<NfcAdapterClient> nfc_adapter_client_;
scoped_ptr<PermissionBrokerClient> permission_broker_client_;
scoped_ptr<SystemClockClient> system_clock_client_;
scoped_ptr<PowerManagerClient> power_manager_client_;