diff --git a/src/org/lineageos/updater/UpdatesCheckReceiver.java b/src/org/lineageos/updater/UpdatesCheckReceiver.java index 5d15a5e76797c1720da4413a2fe47125524ed87a..8db14e51c523fde9ad7d2f977b487f8f9ee8219a 100644 --- a/src/org/lineageos/updater/UpdatesCheckReceiver.java +++ b/src/org/lineageos/updater/UpdatesCheckReceiver.java @@ -83,10 +83,8 @@ public class UpdatesCheckReceiver extends BroadcastReceiver { } final File json = Utils.getCachedUpdateList(context); - boolean isValidatedJsonFile = JsonValidator.validateJsonFile(json); - if (!isValidatedJsonFile && json.exists()) { + if (json.exists() && !JsonValidator.validateJsonFile(json) && json.delete()) { Log.i(TAG, "Removing cached json file due validation failure"); - json.delete(); } final SharedPreferences preferences = @@ -129,8 +127,7 @@ public class UpdatesCheckReceiver extends BroadcastReceiver { @Override public void onSuccess() { try { - boolean isValidated = JsonValidator.validateJsonFile(jsonNew); - if (!isValidated) { + if (!JsonValidator.validateJsonFile(jsonNew)) { Log.i(TAG, "Could not parse list, scheduling new check"); scheduleUpdatesCheck(context); return; diff --git a/src/org/lineageos/updater/misc/JsonValidator.java b/src/org/lineageos/updater/misc/JsonValidator.java index 3e3bcc3aa66c8bccf642ea62c8323ef31203b8d7..a1401c8e37c60de94f67c4e688bc2225088c081e 100644 --- a/src/org/lineageos/updater/misc/JsonValidator.java +++ b/src/org/lineageos/updater/misc/JsonValidator.java @@ -63,14 +63,16 @@ public class JsonValidator { } if (!missingRequiredFields.isEmpty()) { - Log.i(TAG, "Missing or invalid required field in response object: " - + missingRequiredFields); + Log.i(TAG, "Missing or invalid required field in response object: " + + missingRequiredFields); return false; } } catch (IOException | JSONException e) { Log.i(TAG, "Unable to parse the json file:" + e); + return false; } - return false; + + return true; } public static boolean validateResponseObject(JSONObject responseObject) { @@ -105,7 +107,7 @@ public class JsonValidator { } private static boolean isMainFieldValid(JSONObject jsonObject, String field) { - if (!jsonObject.has(field) || jsonObject.isNull(field)) { + if (!jsonObject.has(field)) { return false; }