Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1497)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkMetaDataUtils.java

Issue 2452823002: Make ManifestUpgradeDetector correctly fetch "icon Murmur2 hash" if hash is big (Closed)
Patch Set: Merge branch 'master' into update_fail_fix_crash1_murmur2_long Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkMetaDataUtils.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkMetaDataUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkMetaDataUtils.java
index ef655be142f10b8c5213d5053df1762ffca4a82e..29cf4ba2937e14e8e5da069428cc9380b6e7c3b5 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkMetaDataUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkMetaDataUtils.java
@@ -96,6 +96,22 @@ public class WebApkMetaDataUtils {
}
/**
+ * Extracts icon murmur2 hash from the WebAPK's meta data. Return value is a string because the
+ * hash can take values up to 2^64-1 which is greater than {@link Long#MAX_VALUE}.
+ * @param metaData WebAPK meta data to extract the hash from.
+ * @return The hash. An empty string if the hash could not be extracted.
+ */
+ public static String getIconMurmur2HashFromMetaData(Bundle metaData) {
+ String value = metaData.getString(WebApkMetaDataKeys.ICON_MURMUR2_HASH);
+
+ // The value should be terminated with 'L' to force the value to be a string.
+ if (value == null || !value.endsWith("L")) {
+ return "";
+ }
+ return value.substring(0, value.length() - 1);
+ }
+
+ /**
* Returns the WebDisplayMode which matches {@link displayMode}.
* @param displayMode One of https://www.w3.org/TR/appmanifest/#dfn-display-modes-values
* @return The matching WebDisplayMode. {@link WebDisplayMode#Undefined} if there is no match.

Powered by Google App Engine
This is Rietveld 408576698