21.0: it lives

frameworks/base/packages/SystemUI/src/com/android/systemui/ErrorReportActivity.kt:84:19: error: only safe (?.) or non-null asserted (!!.) calls are allowed on a nullable receiver of type ClipboardManager?
                cm.setPrimaryClip(clipData)

Signed-off-by: Tavi <tavi@divested.dev>
This commit is contained in:
Tavi 2024-12-05 18:57:15 -05:00
parent b236167500
commit ce5700f9e9
No known key found for this signature in database
GPG Key ID: E599F62ECBAEAF2E
6 changed files with 27 additions and 24 deletions

View File

@ -94,7 +94,7 @@ index 6034e92be873..d00599310c5c 100644
} }
+ private void doRebootForOwnerAfterTimeoutIfEnabled(long rebootAfterTimeout) { + private void doRebootForOwnerAfterTimeoutIfEnabled(long rebootAfterTimeout) {
+ long when = SystemClock.elapsedRealtime() + rebootAfterTimeout; + long when = mSystemClock.elapsedRealtime() + rebootAfterTimeout;
+ Intent rebootIntent = new Intent(DELAYED_REBOOT_ACTION); + Intent rebootIntent = new Intent(DELAYED_REBOOT_ACTION);
+ rebootIntent.putExtra("seq", mDelayedRebootSequence); + rebootIntent.putExtra("seq", mDelayedRebootSequence);
+ rebootIntent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND); + rebootIntent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);

View File

@ -23,11 +23,11 @@ This is an effective merge + tweak of two existing patches, credits:
Change-Id: I64a252aac9bb196a11ed7b4b5d8c7e59a3413bd4 Change-Id: I64a252aac9bb196a11ed7b4b5d8c7e59a3413bd4
--- ---
.../android/content/pm/SigningDetails.java | 36 +++++++++- .../android/content/pm/SigningDetails.java | 36 ++++++++-
core/res/res/values/config.xml | 2 + core/res/res/values/config.xml | 2 +
.../com/android/server/pm/AppsFilterImpl.java | 17 +++++ .../com/android/server/pm/AppsFilterImpl.java | 17 +++++
.../com/android/server/pm/ComputerEngine.java | 70 +++++++++++++++++-- .../com/android/server/pm/ComputerEngine.java | 73 +++++++++++++++++--
4 files changed, 118 insertions(+), 7 deletions(-) 4 files changed, 121 insertions(+), 7 deletions(-)
diff --git a/core/java/android/content/pm/SigningDetails.java b/core/java/android/content/pm/SigningDetails.java diff --git a/core/java/android/content/pm/SigningDetails.java b/core/java/android/content/pm/SigningDetails.java
index bb09ad23f6ec..38f9a41bae90 100644 index bb09ad23f6ec..38f9a41bae90 100644
@ -137,7 +137,7 @@ index cc4c2b5bf893..c774c88f1da6 100644
|| newPkg.isForceQueryable() || newPkg.isForceQueryable()
|| ArrayUtils.contains(mForceQueryableByDevicePackageNames, || ArrayUtils.contains(mForceQueryableByDevicePackageNames,
diff --git a/services/core/java/com/android/server/pm/ComputerEngine.java b/services/core/java/com/android/server/pm/ComputerEngine.java diff --git a/services/core/java/com/android/server/pm/ComputerEngine.java b/services/core/java/com/android/server/pm/ComputerEngine.java
index b76683e29e42..9b999426c06c 100644 index b76683e29e42..56f0d7282cf9 100644
--- a/services/core/java/com/android/server/pm/ComputerEngine.java --- a/services/core/java/com/android/server/pm/ComputerEngine.java
+++ b/services/core/java/com/android/server/pm/ComputerEngine.java +++ b/services/core/java/com/android/server/pm/ComputerEngine.java
@@ -86,6 +86,7 @@ import android.content.pm.InstantAppResolveInfo; @@ -86,6 +86,7 @@ import android.content.pm.InstantAppResolveInfo;
@ -231,19 +231,22 @@ index b76683e29e42..9b999426c06c 100644
public final PackageInfo getPackageInfo(String packageName, public final PackageInfo getPackageInfo(String packageName,
@PackageManager.PackageInfoFlagsBits long flags, int userId) { @PackageManager.PackageInfoFlagsBits long flags, int userId) {
return getPackageInfoInternal(packageName, PackageManager.VERSION_CODE_HIGHEST, return getPackageInfoInternal(packageName, PackageManager.VERSION_CODE_HIGHEST,
@@ -5100,6 +5146,20 @@ public class ComputerEngine implements Computer { @@ -5100,6 +5146,23 @@ public class ComputerEngine implements Computer {
return null; return null;
} }
+ if (SystemProperties.getBoolean(MICROG_ENABLEMENT, false)) { + if (SystemProperties.getBoolean(MICROG_ENABLEMENT, false)) {
+ InstallSource installSource = ps.getInstallSource(); + InstallSource installSource = ps.getInstallSource();
+ if (installSource != null && installSource.installerPackageName != null + final String installerPackageName = installSource.mInstallerPackageName;
+ if (installSource != null && installerPackageName != null
+ && mSettings.getPackage(PACKAGE_PLAY_STORE) != null + && mSettings.getPackage(PACKAGE_PLAY_STORE) != null
+ && callingUid != Process.SYSTEM_UID + && callingUid != Process.SYSTEM_UID
+ && ArrayUtils.contains(PACKAGES_SPOOF_INSTALLSOURCE, installSource.installerPackageName)) { + && ArrayUtils.contains(PACKAGES_SPOOF_INSTALLSOURCE, installerPackageName)) {
+ return InstallSource.create(PACKAGE_PLAY_STORE, PACKAGE_PLAY_STORE, PACKAGE_PLAY_STORE, null, + return InstallSource.create(PACKAGE_PLAY_STORE, PACKAGE_PLAY_STORE, PACKAGE_PLAY_STORE,
+ PackageInstaller.PACKAGE_SOURCE_STORE, + installSource.mInstallerPackageUid, // FIXME: likely wrong
+ ps.getInstallSource().isOrphaned, false) + installSource.mUpdateOwnerPackageName,
+ installSource.mInstallerAttributionTag,
+ PackageInstaller.PACKAGE_SOURCE_STORE)
+ .setInitiatingPackageSignatures(new PackageSignatures( + .setInitiatingPackageSignatures(new PackageSignatures(
+ mSettings.getPackage(PACKAGE_PLAY_STORE).getSigningDetails())); + mSettings.getPackage(PACKAGE_PLAY_STORE).getSigningDetails()));
+ } + }

View File

@ -168,7 +168,7 @@ index 00000000..a40fb403
+{ +{
+ size_t alen = hstrlen(a); + size_t alen = hstrlen(a);
+ size_t blen = hstrlen(b); + size_t blen = hstrlen(b);
+ int res = strncmp(a, b, MIN(alen, blen)); + int res = strncmp(a, b, std::min(alen, blen));
+ if (res == 0) + if (res == 0)
+ res = alen - blen; + res = alen - blen;
+ return res; + return res;

View File

@ -374,7 +374,7 @@ processRelease() {
"${APK_SWITCHES_EXTRA[@]}" \ "${APK_SWITCHES_EXTRA[@]}" \
"${APEX_SWITCHES[@]}" \ "${APEX_SWITCHES[@]}" \
"${VERITY_SWITCHES[@]}" \ "${VERITY_SWITCHES[@]}" \
$OUT_DIR/obj/PACKAGING/target_files_intermediates/*$DEVICE-target_files-*.zip \ $OUT_DIR/obj/PACKAGING/target_files_intermediates/*$DEVICE-target_files*.zip \
"$OUT_DIR/$PREFIX-target_files.zip"; "$OUT_DIR/$PREFIX-target_files.zip";
sha512sum "$OUT_DIR/$PREFIX-target_files.zip" > "$OUT_DIR/$PREFIX-target_files.zip.sha512sum"; sha512sum "$OUT_DIR/$PREFIX-target_files.zip" > "$OUT_DIR/$PREFIX-target_files.zip.sha512sum";
local INCREMENTAL_ID=$(grep "ro.build.version.incremental" $OUT_DIR/system/build.prop | cut -f2 -d "=" | sed 's/\.//g'); local INCREMENTAL_ID=$(grep "ro.build.version.incremental" $OUT_DIR/system/build.prop | cut -f2 -d "=" | sed 's/\.//g');

View File

@ -16,7 +16,7 @@
#along with this program. If not, see <https://www.gnu.org/licenses/>. #along with this program. If not, see <https://www.gnu.org/licenses/>.
umask 0022; umask 0022;
#Last verified: 2022-10-15 #Last verified: 2024-12-05
patchAllKernels() { patchAllKernels() {
startPatcher "kernel_google_wahoo"; startPatcher "kernel_google_wahoo";
@ -51,15 +51,15 @@ buildAll() {
cd "$DOS_BUILD_BASE"; cd "$DOS_BUILD_BASE";
if [ "$DOS_MALWARE_SCAN_ENABLED" = true ]; then scanWorkspaceForMalware; fi; if [ "$DOS_MALWARE_SCAN_ENABLED" = true ]; then scanWorkspaceForMalware; fi;
#frontloaded for testing #frontloaded for testing
buildDevice bluejay avb;
buildDevice taimen avb; buildDevice taimen avb;
#SD835 #SD835
buildDevice walleye avb; buildDevice walleye avb;
#Tensor #Tensor #TODO: inline kernel building
buildDevice oriole avb; buildDevice oriole avb;
buildDevice raven avb; buildDevice raven avb;
buildDevice bluejay avb;
buildDevice panther avb; buildDevice panther avb;
buildDevice cheetah avb; buildDevice cheetah avb;
buildDevice lynx avb; buildDevice lynx avb;

View File

@ -18,7 +18,7 @@ umask 0022;
set -euo pipefail; set -euo pipefail;
source "$DOS_SCRIPTS_COMMON/Shell.sh"; source "$DOS_SCRIPTS_COMMON/Shell.sh";
#Last verified: 2024-05-20 #Last verified: 2024-12-05
#Initialize aliases #Initialize aliases
#source ../../Scripts/init.sh #source ../../Scripts/init.sh
@ -177,7 +177,7 @@ applyPatch "$DOS_PATCHES/android_frameworks_base/0022-Ignore_StatementService_AN
#applyPatch "$DOS_PATCHES/android_frameworks_base/326692.patch"; #Skip screen on animation when wake and unlock via biometrics (jesec) #TODO: 20REBASE #applyPatch "$DOS_PATCHES/android_frameworks_base/326692.patch"; #Skip screen on animation when wake and unlock via biometrics (jesec) #TODO: 20REBASE
#applyPatch "$DOS_PATCHES/android_frameworks_base/0023-Skip_Screen_Animation.patch"; #SystemUI: Skip screen-on animation in all scenarios (kdrag0n) #XXX: breaks notification backdrop #TODO: 20REBASE #applyPatch "$DOS_PATCHES/android_frameworks_base/0023-Skip_Screen_Animation.patch"; #SystemUI: Skip screen-on animation in all scenarios (kdrag0n) #XXX: breaks notification backdrop #TODO: 20REBASE
applyPatch "$DOS_PATCHES/android_frameworks_base/0024-Burnin_Protection.patch"; #SystemUI: add burnIn protection (arter97) applyPatch "$DOS_PATCHES/android_frameworks_base/0024-Burnin_Protection.patch"; #SystemUI: add burnIn protection (arter97)
applyPatch "$DOS_PATCHES/android_frameworks_base/0026-Crash_Details.patch"; #Add an option to show the details of an application error to the user (GrapheneOS) #applyPatch "$DOS_PATCHES/android_frameworks_base/0026-Crash_Details.patch"; #Add an option to show the details of an application error to the user (GrapheneOS) #TODO: 21REBASE
applyPatch "$DOS_PATCHES/android_frameworks_base/0028-Remove_Legacy_Package_Query.patch"; #Don't leak device-wide package list to apps when work profile is present (GrapheneOS) applyPatch "$DOS_PATCHES/android_frameworks_base/0028-Remove_Legacy_Package_Query.patch"; #Don't leak device-wide package list to apps when work profile is present (GrapheneOS)
applyPatch "$DOS_PATCHES/android_frameworks_base/0029-Strict_Package_Checks-1.patch"; #Disable package parser cache (GrapheneOS) applyPatch "$DOS_PATCHES/android_frameworks_base/0029-Strict_Package_Checks-1.patch"; #Disable package parser cache (GrapheneOS)
applyPatch "$DOS_PATCHES/android_frameworks_base/0029-Strict_Package_Checks-2.patch"; #Perform additional boot-time checks on system package updates (GrapheneOS) applyPatch "$DOS_PATCHES/android_frameworks_base/0029-Strict_Package_Checks-2.patch"; #Perform additional boot-time checks on system package updates (GrapheneOS)
@ -261,9 +261,9 @@ applyPatch "$DOS_PATCHES/android_libcore/0003-Exec_Based_Spawning-1.patch"; #Add
applyPatch "$DOS_PATCHES/android_libcore/0003-Exec_Based_Spawning-2.patch"; applyPatch "$DOS_PATCHES/android_libcore/0003-Exec_Based_Spawning-2.patch";
fi; fi;
if enterAndClear "lineage-sdk"; then #if enterAndClear "lineage-sdk"; then
applyPatch "$DOS_PATCHES/android_lineage-sdk/0001-Private_DNS-Migration.patch"; #Migrate Private DNS preset modes to hostname-mode based (heavily based off of a CalyxOS patch) #applyPatch "$DOS_PATCHES/android_lineage-sdk/0001-Private_DNS-Migration.patch"; #Migrate Private DNS preset modes to hostname-mode based (heavily based off of a CalyxOS patch) #TODO: 21REBASE
fi; #fi;
if enterAndClear "packages/apps/CellBroadcastReceiver"; then if enterAndClear "packages/apps/CellBroadcastReceiver"; then
applyPatch "$DOS_PATCHES/android_packages_apps_CellBroadcastReceiver/0001-presidential_alert_toggle.patch"; #Allow toggling presidential alerts (GrapheneOS) applyPatch "$DOS_PATCHES/android_packages_apps_CellBroadcastReceiver/0001-presidential_alert_toggle.patch"; #Allow toggling presidential alerts (GrapheneOS)
@ -315,7 +315,7 @@ applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0015-SUPL_Toggle.patch";
applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0016-microG_Toggle.patch"; #Add a toggle for microG enablement (heavily based off of a GrapheneOS patch) applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0016-microG_Toggle.patch"; #Add a toggle for microG enablement (heavily based off of a GrapheneOS patch)
applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0017-OpenEUICC_Toggle.patch"; #Add a toggle for OpenEUICC enablement (heavily based off of a GrapheneOS patch) applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0017-OpenEUICC_Toggle.patch"; #Add a toggle for OpenEUICC enablement (heavily based off of a GrapheneOS patch)
if [ -d "$DOS_BUILD_BASE"/vendor/divested-carriersettings ]; then applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0018-CC2_Toggle.patch"; fi; #Add a toggle for CarrierConfig2 enablement (heavily based off of a GrapheneOS patch) if [ -d "$DOS_BUILD_BASE"/vendor/divested-carriersettings ]; then applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0018-CC2_Toggle.patch"; fi; #Add a toggle for CarrierConfig2 enablement (heavily based off of a GrapheneOS patch)
applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0018-disable_apps.patch"; #Add an ability to disable non-system apps from the "App info" screen (GrapheneOS) #applyPatch "$DOS_PATCHES/android_packages_apps_Settings/0018-disable_apps.patch"; #Add an ability to disable non-system apps from the "App info" screen (GrapheneOS) #TODO: 21REBASE
fi; fi;
if enterAndClear "packages/apps/SetupWizard"; then if enterAndClear "packages/apps/SetupWizard"; then
@ -479,7 +479,7 @@ cd "$DOS_BUILD_BASE";
deblobAudio; deblobAudio;
removeBuildFingerprints; removeBuildFingerprints;
hardenLocationSerials || true; hardenLocationSerials || true;
enableAutoVarInit || true; #enableAutoVarInit || true; #TODO: 21REBASE: has been deprecated and will be ignored
changeDefaultDNS; #Change the default DNS servers changeDefaultDNS; #Change the default DNS servers
fixupCarrierConfigs || true; #Remove silly carrier restrictions fixupCarrierConfigs || true; #Remove silly carrier restrictions
removeUntrustedCerts || true; removeUntrustedCerts || true;