diff --git a/Logs/resetWorkspace-LineageOS-20.0.txt b/Logs/resetWorkspace-LineageOS-20.0.txt
index a6a93d3c..9fa1e54a 100644
--- a/Logs/resetWorkspace-LineageOS-20.0.txt
+++ b/Logs/resetWorkspace-LineageOS-20.0.txt
@@ -293,7 +293,7 @@ external/guava 74de8e915a2763cbf6a4ef36cb0d40fa0c1f5600
external/guice 3e78e30b61c9f2c0338e41ac15c1ac69d370d197
external/gwp_asan 8d9aa99c490ec0c6b60f9c7a28b04ed6d23e392c
external/hamcrest f4787df52bc932ceb8421856868da793afa4bd51
-external/hardened_malloc d3152b8e8ff5070f69e7c991d34f32a429e6a894
+external/hardened_malloc 749640c274d54e084505a24fa758bcb5f96a25ef
external/harfbuzz_ng 96a0723ab55cbd241d364e3e333d212f40b3164c
external/hyphenation-patterns 756bcc4ca799288f180c70de82546175a3f395ea
external/icing 1a80847b72a44761a7e2782871a3bc18f6b3f76b
diff --git a/Manifests/Manifest_LAOS-14.1.xml b/Manifests/Manifest_LAOS-14.1.xml
index 15f6fe4e..acb48971 100644
--- a/Manifests/Manifest_LAOS-14.1.xml
+++ b/Manifests/Manifest_LAOS-14.1.xml
@@ -81,7 +81,7 @@
-
+
diff --git a/Manifests/Manifest_LAOS-15.1.xml b/Manifests/Manifest_LAOS-15.1.xml
index fddfcaf4..76952c21 100644
--- a/Manifests/Manifest_LAOS-15.1.xml
+++ b/Manifests/Manifest_LAOS-15.1.xml
@@ -127,11 +127,11 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/Manifests/Manifest_LAOS-16.0.xml b/Manifests/Manifest_LAOS-16.0.xml
index 60c4256a..6650db37 100644
--- a/Manifests/Manifest_LAOS-16.0.xml
+++ b/Manifests/Manifest_LAOS-16.0.xml
@@ -119,9 +119,9 @@
-
-
-
-
+
+
+
+
diff --git a/Manifests/Manifest_LAOS-17.1.xml b/Manifests/Manifest_LAOS-17.1.xml
index c0ad1a51..d8308734 100644
--- a/Manifests/Manifest_LAOS-17.1.xml
+++ b/Manifests/Manifest_LAOS-17.1.xml
@@ -124,11 +124,11 @@
-
-
-
-
-
-
+
+
+
+
+
+
diff --git a/Manifests/Manifest_LAOS-18.1.xml b/Manifests/Manifest_LAOS-18.1.xml
index ee6e2797..59f9af96 100644
--- a/Manifests/Manifest_LAOS-18.1.xml
+++ b/Manifests/Manifest_LAOS-18.1.xml
@@ -222,17 +222,17 @@
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Manifests/Manifest_LAOS-19.1.xml b/Manifests/Manifest_LAOS-19.1.xml
index bbf49a71..58e4bebb 100644
--- a/Manifests/Manifest_LAOS-19.1.xml
+++ b/Manifests/Manifest_LAOS-19.1.xml
@@ -50,7 +50,7 @@
-
+
@@ -70,5 +70,5 @@
-
+
diff --git a/Manifests/Manifest_LAOS-20.0.xml b/Manifests/Manifest_LAOS-20.0.xml
index 0d3b8cc2..b72ad4ec 100644
--- a/Manifests/Manifest_LAOS-20.0.xml
+++ b/Manifests/Manifest_LAOS-20.0.xml
@@ -50,7 +50,7 @@
-
+
diff --git a/Patches/LineageOS-20.0/android_build/0004-Selective_APEX.patch b/Patches/LineageOS-20.0/android_build/0004-Selective_APEX.patch
index 5295fa28..c928ee22 100644
--- a/Patches/LineageOS-20.0/android_build/0004-Selective_APEX.patch
+++ b/Patches/LineageOS-20.0/android_build/0004-Selective_APEX.patch
@@ -10,7 +10,7 @@ Change-Id: Icffb72d8c3ed0e33e76538bb3427377c33c55ff9
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/target/product/generic_system.mk b/target/product/generic_system.mk
-index 7f5f74f4b..aa7c02cdd 100644
+index 7f5f74f4b..18c1aadc2 100644
--- a/target/product/generic_system.mk
+++ b/target/product/generic_system.mk
@@ -21,8 +21,10 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/languages_default.mk)
diff --git a/Patches/LineageOS-20.0/android_external_hardened_malloc/0001-Broken_Cameras-1.patch b/Patches/LineageOS-20.0/android_external_hardened_malloc/0001-Broken_Cameras-1.patch
index 7455c89c..480bbf54 100644
--- a/Patches/LineageOS-20.0/android_external_hardened_malloc/0001-Broken_Cameras-1.patch
+++ b/Patches/LineageOS-20.0/android_external_hardened_malloc/0001-Broken_Cameras-1.patch
@@ -8,12 +8,12 @@ Subject: [PATCH] workarounds for Pixel 3 SoC era camera driver bugs
1 file changed, 28 insertions(+), 5 deletions(-)
diff --git a/h_malloc.c b/h_malloc.c
-index 91eb6ca..824119b 100644
+index 15be0a2..3fa9ed7 100644
--- a/h_malloc.c
+++ b/h_malloc.c
-@@ -76,6 +76,9 @@ static union {
- #ifdef USE_PKEY
- int metadata_pkey;
+@@ -80,6 +80,9 @@ static union {
+ #ifdef MEMTAG
+ bool is_memtag_disabled;
#endif
+ bool zero_on_free;
+ bool purge_slabs;
@@ -21,7 +21,7 @@ index 91eb6ca..824119b 100644
};
char padding[PAGE_SIZE];
} ro __attribute__((aligned(PAGE_SIZE)));
-@@ -443,7 +446,7 @@ static void *slot_pointer(size_t size, void *slab, size_t slot) {
+@@ -465,7 +468,7 @@ static void *slot_pointer(size_t size, void *slab, size_t slot) {
}
static void write_after_free_check(const char *p, size_t size) {
@@ -30,16 +30,16 @@ index 91eb6ca..824119b 100644
return;
}
-@@ -694,7 +697,7 @@ static inline void deallocate_small(void *p, const size_t *expected_size) {
- if (likely(!is_zero_size)) {
- check_canary(metadata, p, size);
+@@ -812,7 +815,7 @@ static inline void deallocate_small(void *p, const size_t *expected_size) {
+ }
+ #endif
-- if (ZERO_ON_FREE) {
-+ if (ro.zero_on_free) {
+- if (ZERO_ON_FREE && !skip_zero) {
++ if (ro.zero_on_free && !skip_zero) {
memset(p, 0, size - canary_size);
}
}
-@@ -772,7 +775,7 @@ static inline void deallocate_small(void *p, const size_t *expected_size) {
+@@ -890,7 +893,7 @@ static inline void deallocate_small(void *p, const size_t *expected_size) {
if (c->empty_slabs_total + slab_size > max_empty_slabs_total) {
int saved_errno = errno;
@@ -48,7 +48,7 @@ index 91eb6ca..824119b 100644
label_slab(slab, slab_size, class);
stats_slab_deallocate(c, slab_size);
enqueue_free_slab(c, metadata);
-@@ -858,7 +861,7 @@ static void regions_quarantine_deallocate_pages(void *p, size_t size, size_t gua
+@@ -976,7 +979,7 @@ static void regions_quarantine_deallocate_pages(void *p, size_t size, size_t gua
return;
}
@@ -57,7 +57,7 @@ index 91eb6ca..824119b 100644
memory_purge(p, size);
} else {
memory_set_name(p, size, "malloc large quarantine");
-@@ -1074,6 +1077,21 @@ static inline void enforce_init(void) {
+@@ -1192,6 +1195,21 @@ static inline void enforce_init(void) {
}
}
@@ -76,10 +76,10 @@ index 91eb6ca..824119b 100644
+ }
+}
+
- COLD static void init_slow_path(void) {
- static struct mutex lock = MUTEX_INITIALIZER;
+ static struct mutex init_lock = MUTEX_INITIALIZER;
-@@ -1088,6 +1106,11 @@ COLD static void init_slow_path(void) {
+ COLD static void init_slow_path(void) {
+@@ -1207,6 +1225,11 @@ COLD static void init_slow_path(void) {
ro.metadata_pkey = pkey_alloc(0, 0);
#endif
@@ -91,7 +91,7 @@ index 91eb6ca..824119b 100644
if (unlikely(sysconf(_SC_PAGESIZE) != PAGE_SIZE)) {
fatal_error("runtime page size does not match compile-time page size which is not supported");
}
-@@ -1365,7 +1388,7 @@ EXPORT void *h_calloc(size_t nmemb, size_t size) {
+@@ -1491,7 +1514,7 @@ EXPORT void *h_calloc(size_t nmemb, size_t size) {
}
total_size = adjust_size_for_canary(total_size);
void *p = alloc(total_size);
@@ -99,4 +99,4 @@ index 91eb6ca..824119b 100644
+ if (!ro.zero_on_free && likely(p != NULL) && total_size && total_size <= max_slab_size_class) {
memset(p, 0, total_size - canary_size);
}
- return p;
+ #ifdef HAS_ARM_MTE
diff --git a/Patches/LineageOS-20.0/android_external_hardened_malloc/0001-Broken_Cameras-2.patch b/Patches/LineageOS-20.0/android_external_hardened_malloc/0001-Broken_Cameras-2.patch
index ffb15c33..191d455e 100644
--- a/Patches/LineageOS-20.0/android_external_hardened_malloc/0001-Broken_Cameras-2.patch
+++ b/Patches/LineageOS-20.0/android_external_hardened_malloc/0001-Broken_Cameras-2.patch
@@ -10,10 +10,10 @@ Change-Id: I23513ec0379bbb10829f989690334e9704fd20e2
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/h_malloc.c b/h_malloc.c
-index 824119b..bc6eb16 100644
+index 3fa9ed7..0308d73 100644
--- a/h_malloc.c
+++ b/h_malloc.c
-@@ -1085,7 +1085,8 @@ COLD static void handle_bugs(void) {
+@@ -1203,7 +1203,8 @@ COLD static void handle_bugs(void) {
// Pixel 3, Pixel 3 XL, Pixel 3a and Pixel 3a XL camera provider
const char camera_provider[] = "/vendor/bin/hw/android.hardware.camera.provider@2.4-service_64";
diff --git a/Patches/LineageOS-20.0/android_external_hardened_malloc/0002-Broken_Displays.patch b/Patches/LineageOS-20.0/android_external_hardened_malloc/0002-Broken_Displays.patch
index 3ecddab3..f645f1a9 100644
--- a/Patches/LineageOS-20.0/android_external_hardened_malloc/0002-Broken_Displays.patch
+++ b/Patches/LineageOS-20.0/android_external_hardened_malloc/0002-Broken_Displays.patch
@@ -10,10 +10,10 @@ Signed-off-by: Tad
1 file changed, 9 insertions(+)
diff --git a/h_malloc.c b/h_malloc.c
-index bc6eb16..7f76cad 100644
+index 0308d73..6c3b148 100644
--- a/h_malloc.c
+++ b/h_malloc.c
-@@ -1091,6 +1091,15 @@ COLD static void handle_bugs(void) {
+@@ -1209,6 +1209,15 @@ COLD static void handle_bugs(void) {
ro.purge_slabs = false;
ro.region_quarantine_protect = false;
}
@@ -28,4 +28,4 @@ index bc6eb16..7f76cad 100644
+ }
}
- COLD static void init_slow_path(void) {
+ static struct mutex init_lock = MUTEX_INITIALIZER;
diff --git a/Patches/LineageOS-20.0/android_frameworks_base/0030-agnss.goog_override.patch b/Patches/LineageOS-20.0/android_frameworks_base/0030-agnss.goog_override.patch
index 4480b820..f8d2f1bd 100644
--- a/Patches/LineageOS-20.0/android_frameworks_base/0030-agnss.goog_override.patch
+++ b/Patches/LineageOS-20.0/android_frameworks_base/0030-agnss.goog_override.patch
@@ -13,7 +13,7 @@ Signed-off-by: Tad
1 file changed, 35 insertions(+), 10 deletions(-)
diff --git a/services/core/java/com/android/server/location/gnss/GnssPsdsDownloader.java b/services/core/java/com/android/server/location/gnss/GnssPsdsDownloader.java
-index 243910dd9541..f90c5b04abca 100644
+index 243910dd9541..f111d5190340 100644
--- a/services/core/java/com/android/server/location/gnss/GnssPsdsDownloader.java
+++ b/services/core/java/com/android/server/location/gnss/GnssPsdsDownloader.java
@@ -18,6 +18,7 @@ package com.android.server.location.gnss;
diff --git a/PrebuiltApps b/PrebuiltApps
index 09f305c9..f59d65f6 160000
--- a/PrebuiltApps
+++ b/PrebuiltApps
@@ -1 +1 @@
-Subproject commit 09f305c9aeb14b723ab1d2c97b2f989c1da63182
+Subproject commit f59d65f6eeb20d58a65ccd4f4f353ed65d8c06d0
diff --git a/Scripts/LineageOS-20.0/Patch.sh b/Scripts/LineageOS-20.0/Patch.sh
index 20566527..fe447249 100644
--- a/Scripts/LineageOS-20.0/Patch.sh
+++ b/Scripts/LineageOS-20.0/Patch.sh
@@ -51,6 +51,7 @@ cd "$DOS_BUILD_BASE";
#top dir
cp -r "$DOS_PREBUILT_APPS/Fennec_DOS-Shim" "$DOS_BUILD_BASE/packages/apps/"; #Add a shim to install Fennec DOS without actually including the large APK
cp -r "$DOS_PREBUILT_APPS/SupportDivestOS" "$DOS_BUILD_BASE/packages/apps/"; #Add the Support app
+#cp -r "$DOS_PREBUILT_APPS/OpenEUICC" "$DOS_BUILD_BASE/packages/apps/"; #Add the OpenEUICC app
gpgVerifyDirectory "$DOS_PREBUILT_APPS/android_vendor_FDroid_PrebuiltApps/packages";
cp -r "$DOS_PREBUILT_APPS/android_vendor_FDroid_PrebuiltApps/." "$DOS_BUILD_BASE/vendor/fdroid_prebuilt/"; #Add the prebuilt apps
cp -r "$DOS_PATCHES_COMMON/android_vendor_divested/." "$DOS_BUILD_BASE/vendor/divested/"; #Add our vendor files
@@ -119,6 +120,7 @@ applyPatch "$DOS_PATCHES/android_external_hardened_malloc/0001-Broken_Cameras-1.
applyPatch "$DOS_PATCHES/android_external_hardened_malloc/0001-Broken_Cameras-2.patch"; #Expand workaround to all camera executables (DivestOS)
applyPatch "$DOS_PATCHES/android_external_hardened_malloc/0002-Broken_Displays.patch"; #Add workaround for OnePlus 8 & 9 display driver crash (DivestOS)
sed -i 's/34359738368/2147483648/' Android.bp; #revert 48-bit address space requirement
+sed -i -e '76,78d;' Android.bp; #fix compile under A13
fi;
fi;