Loading core/java/android/hardware/radio/ITuner.aidl +2 −0 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,8 @@ import android.hardware.radio.RadioManager; interface ITuner { interface ITuner { void close(); void close(); boolean isClosed(); /** /** * @throws IllegalArgumentException if config is not valid or null * @throws IllegalArgumentException if config is not valid or null */ */ Loading core/java/android/hardware/radio/TunerAdapter.java +6 −2 Original line number Original line Diff line number Diff line Loading @@ -227,7 +227,11 @@ class TunerAdapter extends RadioTuner { @Override @Override public boolean hasControl() { public boolean hasControl() { // TODO(b/36863239): forward to mTuner try { throw new RuntimeException("Not implemented"); // don't rely on mIsClosed, as tuner might get closed internally return !mTuner.isClosed(); } catch (RemoteException e) { return false; } } } } } services/core/java/com/android/server/radio/Tuner.java +6 −1 Original line number Original line Diff line number Diff line Loading @@ -92,13 +92,18 @@ class Tuner extends ITuner.Stub { public void close() { public void close() { synchronized (mLock) { synchronized (mLock) { if (mIsClosed) return; if (mIsClosed) return; mIsClosed = true; mTunerCallback.detach(); mTunerCallback.detach(); mClientCallback.asBinder().unlinkToDeath(mDeathRecipient, 0); mClientCallback.asBinder().unlinkToDeath(mDeathRecipient, 0); nativeClose(mNativeContext); nativeClose(mNativeContext); mIsClosed = true; } } } } @Override public boolean isClosed() { return mIsClosed; } private void checkNotClosedLocked() { private void checkNotClosedLocked() { if (mIsClosed) { if (mIsClosed) { throw new IllegalStateException("Tuner is closed, no further operations are allowed"); throw new IllegalStateException("Tuner is closed, no further operations are allowed"); Loading Loading
core/java/android/hardware/radio/ITuner.aidl +2 −0 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,8 @@ import android.hardware.radio.RadioManager; interface ITuner { interface ITuner { void close(); void close(); boolean isClosed(); /** /** * @throws IllegalArgumentException if config is not valid or null * @throws IllegalArgumentException if config is not valid or null */ */ Loading
core/java/android/hardware/radio/TunerAdapter.java +6 −2 Original line number Original line Diff line number Diff line Loading @@ -227,7 +227,11 @@ class TunerAdapter extends RadioTuner { @Override @Override public boolean hasControl() { public boolean hasControl() { // TODO(b/36863239): forward to mTuner try { throw new RuntimeException("Not implemented"); // don't rely on mIsClosed, as tuner might get closed internally return !mTuner.isClosed(); } catch (RemoteException e) { return false; } } } } }
services/core/java/com/android/server/radio/Tuner.java +6 −1 Original line number Original line Diff line number Diff line Loading @@ -92,13 +92,18 @@ class Tuner extends ITuner.Stub { public void close() { public void close() { synchronized (mLock) { synchronized (mLock) { if (mIsClosed) return; if (mIsClosed) return; mIsClosed = true; mTunerCallback.detach(); mTunerCallback.detach(); mClientCallback.asBinder().unlinkToDeath(mDeathRecipient, 0); mClientCallback.asBinder().unlinkToDeath(mDeathRecipient, 0); nativeClose(mNativeContext); nativeClose(mNativeContext); mIsClosed = true; } } } } @Override public boolean isClosed() { return mIsClosed; } private void checkNotClosedLocked() { private void checkNotClosedLocked() { if (mIsClosed) { if (mIsClosed) { throw new IllegalStateException("Tuner is closed, no further operations are allowed"); throw new IllegalStateException("Tuner is closed, no further operations are allowed"); Loading