Commit ad94f102 authored by Chris Renshaw's avatar Chris Renshaw Committed by topjohnwu

Fix direct install on NAND devices

Co-authored-by: 's avatarJohn Wu <topjohnwu@gmail.com>
parent 02b2290b
......@@ -239,6 +239,12 @@ abstract class MagiskInstallImpl : FlashResultListener {
}
private fun patchBoot(): Boolean {
var srcNand = ""
if ("[ -c $srcBoot ] && nanddump -f boot.img $srcBoot".sh().isSuccess) {
srcNand = srcBoot
srcBoot = File(installDir, "boot.img").path
}
var isSigned = false
try {
SuFileInputStream(srcBoot).use {
......@@ -258,6 +264,10 @@ abstract class MagiskInstallImpl : FlashResultListener {
return false
}
if (srcNand.isNotEmpty()) {
srcBoot = srcNand
}
val job = Shell.sh(
"./magiskboot cleanup",
"mv bin/busybox busybox",
......
......@@ -411,8 +411,8 @@ flash_image() {
[ $img_sz -gt $blk_sz ] && return 1
eval $CMD1 | eval $CMD2 | cat - /dev/zero > "$2" 2>/dev/null
elif [ -c "$2" ]; then
flash_eraseall "$2"
eval $CMD1 | eval $CMD2 | nandwrite -p "$2" -
flash_eraseall "$2" >&2
eval $CMD1 | eval $CMD2 | nandwrite -p "$2" - >&2
else
ui_print "- Not block or char device, storing image"
eval $CMD1 | eval $CMD2 > "$2" 2>/dev/null
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment