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

Commit dbf417ea authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Catch SqlLiteException if database query throws an exception in...

Merge "Catch SqlLiteException if database query throws an exception in CalendarTracker.java" into rvc-dev am: c4568caf am: a78fd69d am: d84e24fe

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

Change-Id: I73995a873585a65634ad2aabdeb3d4457e3a7ef2
parents c8fa2299 d84e24fe
Loading
Loading
Loading
Loading
+12 −4
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.content.ContentUris;
import android.content.Context;
import android.database.ContentObserver;
import android.database.Cursor;
import android.database.sqlite.SQLiteException;
import android.net.Uri;
import android.provider.CalendarContract.Attendees;
import android.provider.CalendarContract.Calendars;
@@ -102,6 +103,8 @@ public class CalendarTracker {
            while (cursor != null && cursor.moveToNext()) {
                rt.add(cursor.getLong(0));
            }
        } catch (SQLiteException e) {
            Slog.w(TAG, "error querying calendar content provider", e);
        } finally {
            if (cursor != null) {
                cursor.close();
@@ -118,11 +121,12 @@ public class CalendarTracker {
        ContentUris.appendId(uriBuilder, time);
        ContentUris.appendId(uriBuilder, time + EVENT_CHECK_LOOKAHEAD);
        final Uri uri = uriBuilder.build();
        final Cursor cursor = mUserContext.getContentResolver().query(uri, INSTANCE_PROJECTION,
                null, null, INSTANCE_ORDER_BY);
        Cursor cursor = null;
        final CheckEventResult result = new CheckEventResult();
        result.recheckAt = time + EVENT_CHECK_LOOKAHEAD;
        try {
            cursor = mUserContext.getContentResolver().query(uri, INSTANCE_PROJECTION,
                    null, null, INSTANCE_ORDER_BY);
            final ArraySet<Long> calendars = getCalendarsWithAccess();
            while (cursor != null && cursor.moveToNext()) {
                final long begin = cursor.getLong(0);
@@ -183,9 +187,10 @@ public class CalendarTracker {
            selection = null;
            selectionArgs = null;
        }
        final Cursor cursor = mUserContext.getContentResolver().query(Attendees.CONTENT_URI,
                ATTENDEE_PROJECTION, selection, selectionArgs, null);
        Cursor cursor = null;
        try {
            cursor = mUserContext.getContentResolver().query(Attendees.CONTENT_URI,
                    ATTENDEE_PROJECTION, selection, selectionArgs, null);
            if (cursor == null || cursor.getCount() == 0) {
                if (DEBUG) Log.d(TAG, "No attendees found");
                return true;
@@ -205,6 +210,9 @@ public class CalendarTracker {
                rt |= eventMeets;
            }
            return rt;
        } catch (SQLiteException e) {
            Slog.w(TAG, "error querying attendees content provider", e);
            return false;
        } finally {
            if (cursor != null) {
                cursor.close();