Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 30e8b42e authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Guard MediaDeviceManager.Entry against successive stop calls"

parents 76e27f91 543dd362
Loading
Loading
Loading
Loading
+22 −18
Original line number Diff line number Diff line
@@ -188,6 +188,7 @@ class MediaDeviceManager @Inject constructor(

        @AnyThread
        fun start() = bgExecutor.execute {
            if (!started) {
                localMediaManager.registerCallback(this)
                localMediaManager.startScan()
                muteAwaitConnectionManager?.startListening()
@@ -197,9 +198,11 @@ class MediaDeviceManager @Inject constructor(
                started = true
                configurationController.addCallback(configListener)
            }
        }

        @AnyThread
        fun stop() = bgExecutor.execute {
            if (started) {
                started = false
                controller?.unregisterCallback(this)
                localMediaManager.stopScan()
@@ -207,6 +210,7 @@ class MediaDeviceManager @Inject constructor(
                muteAwaitConnectionManager?.stopListening()
                configurationController.removeCallback(configListener)
            }
        }

        fun dump(pw: PrintWriter) {
            val routingSession = controller?.let {
@@ -265,7 +269,6 @@ class MediaDeviceManager @Inject constructor(
            updateCurrent()
        }


        override fun onBroadcastStarted(reason: Int, broadcastId: Int) {
            if (DEBUG) {
                Log.d(TAG, "onBroadcastStarted(), reason = $reason , broadcastId = $broadcastId")
@@ -279,8 +282,10 @@ class MediaDeviceManager @Inject constructor(
            }
        }

        override fun onBroadcastMetadataChanged(broadcastId: Int,
                                                metadata: BluetoothLeBroadcastMetadata) {
        override fun onBroadcastMetadataChanged(
            broadcastId: Int,
            metadata: BluetoothLeBroadcastMetadata
        ) {
            if (DEBUG) {
                Log.d(TAG, "onBroadcastMetadataChanged(), broadcastId = $broadcastId , " +
                        "metadata = $metadata")
@@ -291,7 +296,6 @@ class MediaDeviceManager @Inject constructor(
        override fun onBroadcastStopped(reason: Int, broadcastId: Int) {
            if (DEBUG) {
                Log.d(TAG, "onBroadcastStopped(), reason = $reason , broadcastId = $broadcastId")

            }
            updateCurrent()
        }