From ec11096e1fea1e9b79eca5916d28105a9c09f072 Mon Sep 17 00:00:00 2001 From: qwq233 Date: Fri, 13 Mar 2026 14:34:02 +0800 Subject: [PATCH] fix: ensure safe extraction of radare2 tarball On some AOSP builds, the default 'tar' behavior is inconsistent and may attempt to overwrite the permissions of the destination root directory. This often leads to permission denied errors or command failures when extracting as root. This commit adds '--no-same-owner', '-m', and '-p' flags to mitigate these issues. Specifically, it prevents tar from attempting to preserve original ownership and ensures that file modification times and permissions are handled more predictably during extraction to the target directory. Signed-off-by: qwq233 --- .../java/me/kavishdevar/librepods/utils/RadareOffsetFinder.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android/app/src/main/java/me/kavishdevar/librepods/utils/RadareOffsetFinder.kt b/android/app/src/main/java/me/kavishdevar/librepods/utils/RadareOffsetFinder.kt index e5a1e7bd..6396ec42 100644 --- a/android/app/src/main/java/me/kavishdevar/librepods/utils/RadareOffsetFinder.kt +++ b/android/app/src/main/java/me/kavishdevar/librepods/utils/RadareOffsetFinder.kt @@ -300,7 +300,7 @@ class RadareOffsetFinder(context: Context) { Log.d(TAG, "Extracting ${radare2TarballFile.absolutePath} to $EXTRACT_DIR") val process = Runtime.getRuntime().exec( - arrayOf("su", "-c", "tar xvf ${radare2TarballFile.absolutePath} -C $EXTRACT_DIR") + arrayOf("su", "-c", "tar xvf ${radare2TarballFile.absolutePath} --no-same-owner -m -p -C $EXTRACT_DIR") ) val reader = BufferedReader(InputStreamReader(process.inputStream))