summaryrefslogtreecommitdiffstats
path: root/device/bluetooth/bluetooth_discovery_session.h
diff options
context:
space:
mode:
authorarmansito@chromium.org <armansito@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-07 14:17:39 +0000
committerarmansito@chromium.org <armansito@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-07 14:17:39 +0000
commitccb7372246091549d8fdbb62477069496202281e (patch)
tree5251b5b6a9a8bbd5ebf2f34cc1485bfc878bfa3e /device/bluetooth/bluetooth_discovery_session.h
parenta2093312232560c7984ad6213df0e99343bea225 (diff)
downloadchromium_src-ccb7372246091549d8fdbb62477069496202281e.zip
chromium_src-ccb7372246091549d8fdbb62477069496202281e.tar.gz
chromium_src-ccb7372246091549d8fdbb62477069496202281e.tar.bz2
Migrate chrome.bluetooth API backend to use device::BluetoothDiscoverySession.
Modified chrome.bluetooth API code to use the new discovery session API for device discovery. This CL is the same as r255262 which was reverted due to a memory leak. The leak has been addressed in this patch. BUG=346982,349942 TEST=1. Run unit_tests and browser_tests with LSan. 2. Use multiple running extension instances with the bluetooth permission and check for the following behavior: - Only one session per extension. Calling chrome.bluetooth.stopDiscovery from one running app should fail if that app never called chrome.bluetooth.startDiscovery. - An app's discovery sessions should get cleaned up if that app crashes or unloads. - Use bt_console and run "power off". This should cause all discovery sessions that have been assigned to apps to get marked as inactive. Verify by requesting a new discovery session from apps, which should succeed. Review URL: https://codereview.chromium.org/189463002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@255609 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'device/bluetooth/bluetooth_discovery_session.h')
-rw-r--r--device/bluetooth/bluetooth_discovery_session.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/device/bluetooth/bluetooth_discovery_session.h b/device/bluetooth/bluetooth_discovery_session.h
index bc2f893..666538b 100644
--- a/device/bluetooth/bluetooth_discovery_session.h
+++ b/device/bluetooth/bluetooth_discovery_session.h
@@ -58,10 +58,12 @@ class BluetoothDiscoverySession {
const ErrorCallback& error_callback);
protected:
- friend class BluetoothAdapter;
- explicit BluetoothDiscoverySession(BluetoothAdapter* adapter);
+ BluetoothDiscoverySession(); // Called by mock.
private:
+ friend class BluetoothAdapter;
+ explicit BluetoothDiscoverySession(scoped_refptr<BluetoothAdapter> adapter);
+
// Internal callback invoked when a call to Stop has succeeded.
void OnStop(const base::Closure& callback);