diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogCalendar.java b/app/src/main/java/eu/faircode/email/FragmentDialogCalendar.java index e5262c3e87..a8168fd09e 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogCalendar.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogCalendar.java @@ -75,13 +75,19 @@ public class FragmentDialogCalendar extends FragmentDialogBase { null, CalendarContract.Calendars.ACCOUNT_NAME)) { + int colId = cursor.getColumnIndexOrThrow(CalendarContract.Calendars._ID); + int colAccount = cursor.getColumnIndexOrThrow(CalendarContract.Calendars.ACCOUNT_NAME); + int colType = cursor.getColumnIndexOrThrow(CalendarContract.Calendars.ACCOUNT_TYPE); + int colPrimary = cursor.getColumnIndexOrThrow(CalendarContract.Calendars.IS_PRIMARY); + int colVisible = cursor.getColumnIndexOrThrow(CalendarContract.Calendars.VISIBLE); + int colDisplay = cursor.getColumnIndexOrThrow(CalendarContract.Calendars.CALENDAR_DISPLAY_NAME); while (cursor.moveToNext()) { - long id = cursor.getLong(0); - String account = cursor.getString(1); - String type = cursor.getString(2); - boolean primary = (cursor.getInt(3) != 0); - boolean visible = (cursor.getInt(4) != 0); - String name = cursor.getString(5); + long id = cursor.getLong(colId); + String account = cursor.getString(colAccount); + String type = cursor.getString(colType); + boolean primary = (cursor.getInt(colPrimary) != 0); + boolean visible = (cursor.getInt(colVisible) != 0); + String name = cursor.getString(colDisplay); if (account != null) calendars.add(new Calendar(id, account, type, primary, visible, name)); } diff --git a/app/src/main/java/eu/faircode/email/MessageHelper.java b/app/src/main/java/eu/faircode/email/MessageHelper.java index 263aad0f54..ac29635294 100644 --- a/app/src/main/java/eu/faircode/email/MessageHelper.java +++ b/app/src/main/java/eu/faircode/email/MessageHelper.java @@ -3973,11 +3973,13 @@ public class MessageHelper { if (cursor.getCount() == 0) EntityLog.log(context, EntityLog.Type.General, message, "Account not found username=" + account.user); + + int colId = cursor.getColumnIndexOrThrow(CalendarContract.Calendars._ID); if (cursor.moveToNext()) { // https://developer.android.com/guide/topics/providers/calendar-provider#add-event // https://developer.android.com/reference/android/provider/CalendarContract.EventsColumns ContentValues values = new ContentValues(); - values.put(CalendarContract.Events.CALENDAR_ID, cursor.getLong(0)); + values.put(CalendarContract.Events.CALENDAR_ID, cursor.getLong(colId)); if (!TextUtils.isEmpty(uid)) values.put(CalendarContract.Events.UID_2445, uid); values.put(CalendarContract.Events.EVENT_TIMEZONE, TimeZone.getDefault().getID());