From aa7991464a50ddc808e78c405935bfb54f8d2576 Mon Sep 17 00:00:00 2001 From: Malcolm Smith Date: Thu, 18 Dec 2025 00:20:20 +0000 Subject: [PATCH] Avoid automatic decompression of .gz files --- Android/testbed/app/build.gradle.kts | 6 ++++++ .../app/src/main/java/org/python/testbed/MainActivity.kt | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Android/testbed/app/build.gradle.kts b/Android/testbed/app/build.gradle.kts index 14d43d8c4d5c42..9e775ca6903a44 100644 --- a/Android/testbed/app/build.gradle.kts +++ b/Android/testbed/app/build.gradle.kts @@ -229,6 +229,12 @@ androidComponents.onVariants { variant -> from(cwd) } } + + // A filename ending with .gz will be automatically decompressed + // while building the APK. Avoid this by adding a dash to the end, + // and add an extra dash to any filenames that already end with one. + // This will be undone in MainActivity.kt. + rename(""".*(\.gz|-)""", "$0-") } } diff --git a/Android/testbed/app/src/main/java/org/python/testbed/MainActivity.kt b/Android/testbed/app/src/main/java/org/python/testbed/MainActivity.kt index 5727b0fe6c30c0..dc49cdb9a9f739 100644 --- a/Android/testbed/app/src/main/java/org/python/testbed/MainActivity.kt +++ b/Android/testbed/app/src/main/java/org/python/testbed/MainActivity.kt @@ -80,7 +80,9 @@ class PythonTestRunner(val context: Context) { continue } input.use { - File(targetSubdir, name).outputStream().use { output -> + // Undo the .gz workaround from build.gradle.kts. + val outputName = name.replace(Regex("""(.*)-"""), "$1") + File(targetSubdir, outputName).outputStream().use { output -> input.copyTo(output) } }