From 186a5a19ba003a1c0aad61ab01cabcdafdac8a4c Mon Sep 17 00:00:00 2001 From: Alexandre Roux D'Anzi Date: Fri, 14 Oct 2022 14:20:17 +0200 Subject: [PATCH 1/4] Revert "Revert "S dont crash when receiving maintenance number"" This reverts commit f6818ee6634adda33aed99f8a106805bb1efa2cd. --- .../download/HttpURLConnectionClient.java | 6 +++++- src/org/lineageos/updater/misc/Utils.java | 18 +++++------------- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/src/org/lineageos/updater/download/HttpURLConnectionClient.java b/src/org/lineageos/updater/download/HttpURLConnectionClient.java index 52c1073a..df6283b5 100644 --- a/src/org/lineageos/updater/download/HttpURLConnectionClient.java +++ b/src/org/lineageos/updater/download/HttpURLConnectionClient.java @@ -16,6 +16,8 @@ package org.lineageos.updater.download; import android.os.SystemClock; +import android.os.SystemProperties; + import android.util.Log; import java.io.File; @@ -32,6 +34,8 @@ import java.util.PriorityQueue; import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.lineageos.updater.misc.Constants; + public class HttpURLConnectionClient implements DownloadClient { private final static String TAG = "HttpURLConnectionClient"; @@ -60,7 +64,7 @@ public class HttpURLConnectionClient implements DownloadClient { mClient = (HttpURLConnection) new URL(url).openConnection(); String defaultUserAgent = mClient.getRequestProperty("User-Agent"); - String newUserAgent = defaultUserAgent + " ota_007_eels"; + String newUserAgent = defaultUserAgent + " eOS v" + SystemProperties.get(Constants.PROP_BUILD_VERSION); mClient.setRequestProperty("User-Agent", newUserAgent); mDestination = destination; diff --git a/src/org/lineageos/updater/misc/Utils.java b/src/org/lineageos/updater/misc/Utils.java index 8aa0582e..aca2b04d 100644 --- a/src/org/lineageos/updater/misc/Utils.java +++ b/src/org/lineageos/updater/misc/Utils.java @@ -274,22 +274,14 @@ public class Utils { public static boolean checkForNewUpdates(File newJson, Context context) throws IOException, JSONException { List newList = parseJson(newJson, true); - final float currentVersion = Float.parseFloat(BuildInfoUtils.getBuildVersion()); - float highestAvailableVersion = currentVersion; for (UpdateInfo update : newList) { - float availableversion = Float.parseFloat(update.getVersion()); - if (availableversion > highestAvailableVersion) { - highestAvailableVersion = availableversion; + if (isCompatible(update)) { + Log.d(TAG, "New compatible update available"); + updateSystemUpdaterService(context, STATUS_WAITING_DOWNLOAD, highestAvailableVersion); + return true; } } - - if (highestAvailableVersion > currentVersion) { - updateSystemUpdaterService(context, STATUS_WAITING_DOWNLOAD, highestAvailableVersion); - return true; - } else { - updateSystemUpdaterService(context, STATUS_IDLE, highestAvailableVersion); - return false; - } + updateSystemUpdaterService(context, STATUS_IDLE, highestAvailableVersion); } /** -- GitLab From 69ffa6ff304eabefd2de1528ba319ac6ef974fb9 Mon Sep 17 00:00:00 2001 From: Alexandre Roux D'Anzi Date: Fri, 14 Oct 2022 14:32:53 +0200 Subject: [PATCH 2/4] fix build issue --- src/org/lineageos/updater/misc/Utils.java | 24 ++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/src/org/lineageos/updater/misc/Utils.java b/src/org/lineageos/updater/misc/Utils.java index aca2b04d..b1dd8256 100644 --- a/src/org/lineageos/updater/misc/Utils.java +++ b/src/org/lineageos/updater/misc/Utils.java @@ -274,14 +274,32 @@ public class Utils { public static boolean checkForNewUpdates(File newJson, Context context) throws IOException, JSONException { List newList = parseJson(newJson, true); + int[] deviceVersionParts = parseSemVer(SystemProperties.get(Constants.PROP_BUILD_VERSION)); + int deviceMajorVersion = deviceVersionParts[0]; + int deviceMinorVersion = deviceVersionParts[1]; + final float currentVersion = Float.parseFloat(deviceMajorVersion + "." + deviceMinorVersion); + float highestAvailableVersion = currentVersion; + boolean hasUpdate = false; for (UpdateInfo update : newList) { if (isCompatible(update)) { Log.d(TAG, "New compatible update available"); - updateSystemUpdaterService(context, STATUS_WAITING_DOWNLOAD, highestAvailableVersion); - return true; + int[] updateVersionParts = parseSemVer(update.getVersion()); + int updateMajorVersion = updateVersionParts[0]; + int updateMinorVersion = updateVersionParts[1]; + float thisUpdate = Float.parseFloat(updateMajorVersion + "." + updateMinorVersion) + if (thisUpdate > highestAvailableVersion) { + highestAvailableVersion = thisUpdate; + } + hasUpdate = true; } } - updateSystemUpdaterService(context, STATUS_IDLE, highestAvailableVersion); + if (hasUpdate) { + updateSystemUpdaterService(context, STATUS_WAITING_DOWNLOAD, highestAvailableVersion); + return true; + } else { + updateSystemUpdaterService(context, STATUS_IDLE, highestAvailableVersion); + return false; + } } /** -- GitLab From b9f9633ad8b0d89e348a87ab43f07594eb5962b5 Mon Sep 17 00:00:00 2001 From: Alexandre Roux D'Anzi Date: Fri, 14 Oct 2022 15:42:10 +0200 Subject: [PATCH 3/4] forgotten semicolon --- src/org/lineageos/updater/misc/Utils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/org/lineageos/updater/misc/Utils.java b/src/org/lineageos/updater/misc/Utils.java index b1dd8256..3e8b1cdb 100644 --- a/src/org/lineageos/updater/misc/Utils.java +++ b/src/org/lineageos/updater/misc/Utils.java @@ -286,7 +286,7 @@ public class Utils { int[] updateVersionParts = parseSemVer(update.getVersion()); int updateMajorVersion = updateVersionParts[0]; int updateMinorVersion = updateVersionParts[1]; - float thisUpdate = Float.parseFloat(updateMajorVersion + "." + updateMinorVersion) + float thisUpdate = Float.parseFloat(updateMajorVersion + "." + updateMinorVersion); if (thisUpdate > highestAvailableVersion) { highestAvailableVersion = thisUpdate; } -- GitLab From 5173830320f8d0a20f1e05fd808cae502fe02ce5 Mon Sep 17 00:00:00 2001 From: Jonathan Klee Date: Tue, 18 Oct 2022 12:52:47 +0000 Subject: [PATCH 4/4] Apply 1 suggestion(s) to 1 file(s) --- src/org/lineageos/updater/misc/Utils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/org/lineageos/updater/misc/Utils.java b/src/org/lineageos/updater/misc/Utils.java index 3e8b1cdb..0be1eab9 100644 --- a/src/org/lineageos/updater/misc/Utils.java +++ b/src/org/lineageos/updater/misc/Utils.java @@ -279,7 +279,7 @@ public class Utils { int deviceMinorVersion = deviceVersionParts[1]; final float currentVersion = Float.parseFloat(deviceMajorVersion + "." + deviceMinorVersion); float highestAvailableVersion = currentVersion; - boolean hasUpdate = false; + boolean hasUpdate = false; for (UpdateInfo update : newList) { if (isCompatible(update)) { Log.d(TAG, "New compatible update available"); -- GitLab