Fix stock image restore

Fix #8211
This commit is contained in:
topjohnwu 2024-08-20 02:23:20 -07:00
parent 5604074eba
commit e6bd2ff60f
2 changed files with 11 additions and 11 deletions

View File

@ -78,7 +78,7 @@ run_uninstaller() {
}
restore_imgs() {
[ -z $SHA1 ] && return 1
local SHA1=$(grep_prop SHA1 $MAGISKTMP/.magisk/config)
local BACKUPDIR=/data/magisk_backup_$SHA1
[ -d $BACKUPDIR ] || return 1
@ -232,7 +232,6 @@ app_init() {
check_boot_ramdisk && RAMDISKEXIST=true
get_flags >/dev/null
run_migrations >/dev/null
SHA1=$(grep_prop SHA1 $MAGISKTMP/.magisk/config)
check_encryption
# Dump variables

View File

@ -530,7 +530,7 @@ check_data() {
}
run_migrations() {
local LOCSHA1
local SHA1
local TARGET
# Legacy app installation
local BACKUP=$MAGISKBIN/stock_boot*.gz
@ -542,22 +542,23 @@ run_migrations() {
# Legacy backup
for gz in /data/stock_boot*.gz; do
[ -f $gz ] || break
LOCSHA1=$(basename $gz | sed -e 's/stock_boot_//' -e 's/.img.gz//')
[ -z $LOCSHA1 ] && break
mkdir /data/magisk_backup_${LOCSHA1} 2>/dev/null
mv $gz /data/magisk_backup_${LOCSHA1}/boot.img.gz
SHA1=$(basename $gz | sed -e 's/stock_boot_//' -e 's/.img.gz//')
[ -z $SHA1 ] && break
mkdir /data/magisk_backup_${SHA1} 2>/dev/null
mv $gz /data/magisk_backup_${SHA1}/boot.img.gz
done
# Stock backups
LOCSHA1=$SHA1
SHA1=
for name in boot dtb dtbo dtbs; do
BACKUP=$MAGISKBIN/stock_${name}.img
[ -f $BACKUP ] || continue
if [ $name = 'boot' ]; then
LOCSHA1=$($MAGISKBIN/magiskboot sha1 $BACKUP)
mkdir /data/magisk_backup_${LOCSHA1} 2>/dev/null
SHA1=$($MAGISKBIN/magiskboot sha1 $BACKUP)
mkdir /data/magisk_backup_${SHA1} 2>/dev/null
fi
TARGET=/data/magisk_backup_${LOCSHA1}/${name}.img
[ -z $SHA1 ] && break
TARGET=/data/magisk_backup_${SHA1}/${name}.img
cp $BACKUP $TARGET
rm -f $BACKUP
gzip -9f $TARGET