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

Commit 699f58b5 authored by Kyunglyul Hyun's avatar Kyunglyul Hyun
Browse files

Catch exception during query

ContentResolve#query sometimes throws
exceptions that can't be handled by clients.
(BluetoothPbapService or BluetoothMapService)

Instead of throwing an exception, return null.
All the callers already handle null returns.

Flag: EXEMPT, exception handling
Bug: 383227945
Test: atest BluetoothInstrumentationTests
Change-Id: I641a14fbe44e416a3e7fa2cad11e19cf8e29395a
parent dc74758a
Loading
Loading
Loading
Loading
+13 −2
Original line number Diff line number Diff line
@@ -100,7 +100,13 @@ public class BluetoothMethodProxy {
            final String selection,
            final String[] selectionArgs,
            final String sortOrder) {
        return contentResolver.query(contentUri, projection, selection, selectionArgs, sortOrder);
        try {
            return contentResolver.query(
                    contentUri, projection, selection, selectionArgs, sortOrder);
        } catch (Exception e) {
            Log.e(TAG, "Exception happened" + e + "\n" + Log.getStackTraceString(new Throwable()));
            return null;
        }
    }

    /** Proxies {@link ContentResolver#query(Uri, String[], Bundle, CancellationSignal)}. */
@@ -110,7 +116,12 @@ public class BluetoothMethodProxy {
            final String[] projection,
            final Bundle queryArgs,
            final CancellationSignal cancellationSignal) {
        try {
            return contentResolver.query(contentUri, projection, queryArgs, cancellationSignal);
        } catch (Exception e) {
            Log.e(TAG, "Exception happened " + e + "\n" + Log.getStackTraceString(new Throwable()));
            return null;
        }
    }

    /** Proxies {@link ContentResolver#insert(Uri, ContentValues)}. */