diff --git a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java index 5dbfe58a48..cc7b7bf2fb 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSynchronize.java +++ b/app/src/main/java/eu/faircode/email/ServiceSynchronize.java @@ -31,6 +31,7 @@ import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.content.SharedPreferences; +import android.database.sqlite.SQLiteFullException; import android.net.ConnectivityManager; import android.net.LinkProperties; import android.net.Network; @@ -2593,8 +2594,10 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences long delayed = now - account.last_connected - account.poll_interval * 60 * 1000L; long maxDelayed = (pollInterval > 0 && !account.isExempted(this) ? pollInterval * ACCOUNT_ERROR_AFTER_POLL : ACCOUNT_ERROR_AFTER) * 60 * 1000L; - if (delayed > maxDelayed && - state.getBackoff() >= CONNECT_BACKOFF_ALARM_START * 60) { + // android.database.sqlite.SQLiteFullException: database or disk is full (code 13 SQLITE_FULL) + if (ex instanceof SQLiteFullException || + (delayed > maxDelayed && + state.getBackoff() >= CONNECT_BACKOFF_ALARM_START * 60)) { Log.i("Reporting sync error after=" + delayed); Throwable warning = new Throwable( getString(R.string.title_no_sync,