diff --git a/app/src/main/java/ca/pkay/rcloneexplorer/Database/DatabaseHandler.kt b/app/src/main/java/ca/pkay/rcloneexplorer/Database/DatabaseHandler.kt index 90b747264..121ba063e 100644 --- a/app/src/main/java/ca/pkay/rcloneexplorer/Database/DatabaseHandler.kt +++ b/app/src/main/java/ca/pkay/rcloneexplorer/Database/DatabaseHandler.kt @@ -156,10 +156,10 @@ class DatabaseHandler(context: Context?) : task.direction = cursor.getInt(6) task.md5sum = getBoolean(cursor, 7) task.wifionly = getBoolean(cursor, 8) - task.filterId = cursor.getLong(9) + task.filterId = if (cursor.isNull(9)) null else cursor.getLong(9) task.deleteExcluded = getBoolean(cursor, 10) - task.onFailFollowup = cursor.getLong(11) - task.onSuccessFollowup = cursor.getLong(12) + task.onFailFollowup = if (cursor.isNull(11) || cursor.getLong(11) <= 0L) null else cursor.getLong(11) + task.onSuccessFollowup = if (cursor.isNull(12) || cursor.getLong(12) <= 0L) null else cursor.getLong(12) return task } diff --git a/app/src/main/java/ca/pkay/rcloneexplorer/workmanager/SyncWorker.kt b/app/src/main/java/ca/pkay/rcloneexplorer/workmanager/SyncWorker.kt index 7056e7bae..b18306aa7 100644 --- a/app/src/main/java/ca/pkay/rcloneexplorer/workmanager/SyncWorker.kt +++ b/app/src/main/java/ca/pkay/rcloneexplorer/workmanager/SyncWorker.kt @@ -125,7 +125,8 @@ class SyncWorker (private var mContext: Context, workerParams: WorkerParameters) handleTask() postSync() } else { - postSync() + log("No valid task found for ID. Aborting.") + mNotificationManager.cancelSyncNotification(ongoingNotificationID) return Result.failure() } @@ -189,7 +190,7 @@ class SyncWorker (private var mContext: Context, workerParams: WorkerParameters) log2File?.log(line) } statusObject.parseLoglineToStatusObject(logline) - } else if (logline.getString("level") == "warning") { + } else if (logline.getString("level") == "warning" || logline.has("stats")) { statusObject.parseLoglineToStatusObject(logline) } @@ -435,7 +436,7 @@ class SyncWorker (private var mContext: Context, workerParams: WorkerParameters) } private fun followupTask(followUpTaskID: Long?) { - if (followUpTaskID == null || followUpTaskID == -1L) { + if (followUpTaskID == null || followUpTaskID <= 0L) { return } Thread.sleep(1000)