From b927e9175fa457839b2f01c7d8ac42b6594bb195 Mon Sep 17 00:00:00 2001 From: "jknotten@chromium.org" Date: Fri, 5 Nov 2010 09:33:56 +0000 Subject: Fix dbus- and geolocation- related crash on Linux. The NetworkManagerWlanApi class in wifi_data_provider_linux.cc was using a shared dbus connection which was referenced as a GSource in the glib message loop in the main thread, and also from the WifiDataProviderCommon thread. When the dbus proxy object and connection was unreferenced in the WifiDataCommon thread, the glib main loop in the main thread could concurrently reference it during object destruction, causing a crash. We fix this by using a private dbus connection instead, referencing its own glib main loop separate to that of the main thread. BUG=59913 TEST=GeolocationWifiDataProviderPlatformTest.CreateAndDestroy Review URL: http://codereview.chromium.org/4307001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65185 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/chrome_tests.gypi | 1 + 1 file changed, 1 insertion(+) (limited to 'chrome/chrome_tests.gypi') diff --git a/chrome/chrome_tests.gypi b/chrome/chrome_tests.gypi index eb798fe..810655d 100644 --- a/chrome/chrome_tests.gypi +++ b/chrome/chrome_tests.gypi @@ -1282,6 +1282,7 @@ 'browser/extensions/user_script_master_unittest.cc', 'browser/find_backend_unittest.cc', 'browser/first_run/first_run_unittest.cc', + 'browser/geolocation/device_data_provider_unittest.cc', 'browser/geolocation/fake_access_token_store.h', 'browser/geolocation/gateway_data_provider_common_unittest.cc', 'browser/geolocation/geolocation_content_settings_map_unittest.cc', -- cgit v1.1