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

Commit 13e44548 authored by Hangyu Kuang's avatar Hangyu Kuang Committed by Automerger Merge Worker
Browse files

Merge "transcoding: Do not throw exception in registerClient." into sc-dev am: 84958703

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/13630932

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3ca460f11aea229750d622fadaa394484643ef9e
parents 5934f399 84958703
Loading
Loading
Loading
Loading
+13 −9
Original line number Diff line number Diff line
@@ -295,8 +295,8 @@ public final class MediaTranscodeManager {
                /* ignore */
            }
        }

        throw new UnsupportedOperationException("Failed to connect to MediaTranscoding service");
        Log.w(TAG, "Failed to get service");
        return null;
    }

    /*
@@ -463,8 +463,7 @@ public final class MediaTranscodeManager {
                }
            };

    private ITranscodingClient registerClient(IMediaTranscodingService service)
            throws UnsupportedOperationException {
    private ITranscodingClient registerClient(IMediaTranscodingService service) {
        synchronized (mLock) {
            try {
                // Registers the client with MediaTranscoding service.
@@ -476,13 +475,12 @@ public final class MediaTranscodeManager {
                if (mTranscodingClient != null) {
                    mTranscodingClient.asBinder().linkToDeath(() -> onClientDied(), /* flags */ 0);
                }
                return mTranscodingClient;
            } catch (RemoteException re) {
                Log.e(TAG, "Failed to register new client due to exception " + re);
            } catch (Exception ex) {
                Log.e(TAG, "Failed to register new client due to exception " + ex);
                mTranscodingClient = null;
            }
        }
        throw new UnsupportedOperationException("Failed to register new client");
        return mTranscodingClient;
    }

    /**
@@ -495,8 +493,10 @@ public final class MediaTranscodeManager {
        mUid = Os.getuid();
        mPid = Os.getpid();
        IMediaTranscodingService service = getService(false /*retry*/);
        if (service != null) {
            mTranscodingClient = registerClient(service);
        }
    }

    public static final class TranscodingRequest {
        /** Uri of the source media file. */
@@ -1567,6 +1567,10 @@ public final class MediaTranscodeManager {
                    if (mTranscodingClient == null) {
                        // Try to register with the service again.
                        IMediaTranscodingService service = getService(false /*retry*/);
                        if (service == null) {
                            throw new MediaTranscodingException.ServiceNotAvailableException(
                                    "Service rebooting. Try again later");
                        }
                        mTranscodingClient = registerClient(service);
                        // If still fails, throws an exception to tell client to try later.
                        if (mTranscodingClient == null) {