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

Commit cd230552 authored by Yixiao Luo's avatar Yixiao Luo Committed by Android (Google) Code Review
Browse files

Merge "Add synchronization when handling TVINPUT_INFO_ADDED messages in...

Merge "Add synchronization when handling TVINPUT_INFO_ADDED messages in TvInputHardwareManager.ListenerHandler" into main
parents ac89adc3 f712a7ba
Loading
Loading
Loading
Loading
+16 −10
Original line number Original line Diff line number Diff line
@@ -1339,16 +1339,22 @@ class TvInputHardwareManager implements TvInputHal.Callback {
                    String inputId = mHardwareInputIdMap.get(deviceId);
                    String inputId = mHardwareInputIdMap.get(deviceId);


                    if (inputId != null) {
                    if (inputId != null) {
                        if (connection.updateCableConnectionStatusLocked(cableConnectionStatus)) {
                        synchronized (mLock) {
                            if (previousCableConnectionStatus != connection.getInputStateLocked()) {
                            if (connection.updateCableConnectionStatusLocked(
                                        cableConnectionStatus)) {
                                if (previousCableConnectionStatus
                                        != connection.getInputStateLocked()) {
                                    mHandler.obtainMessage(ListenerHandler.STATE_CHANGED,
                                    mHandler.obtainMessage(ListenerHandler.STATE_CHANGED,
                                    connection.getInputStateLocked(), 0, inputId).sendToTarget();
                                                    connection.getInputStateLocked(), 0, inputId)
                                            .sendToTarget();
                                }
                                }
                            } else {
                            } else {
                                if ((previousConfigsLength == 0)
                                if ((previousConfigsLength == 0)
                                        != (connection.getConfigsLengthLocked() == 0)) {
                                        != (connection.getConfigsLengthLocked() == 0)) {
                                    mHandler.obtainMessage(ListenerHandler.STATE_CHANGED,
                                    mHandler.obtainMessage(ListenerHandler.STATE_CHANGED,
                                    connection.getInputStateLocked(), 0, inputId).sendToTarget();
                                                    connection.getInputStateLocked(), 0, inputId)
                                            .sendToTarget();
                                }
                            }
                            }
                        }
                        }
                    }
                    }