fix: Downgrade smali to fix dex compilation issue

This commit is contained in:
oSumAtrIX 2024-07-31 01:12:21 +02:00
parent 328aa876d8
commit 714447de70
No known key found for this signature in database
GPG key ID: A9B3094ACDB604B4
5 changed files with 13 additions and 5 deletions

View file

@ -67,7 +67,8 @@ public final class app/revanced/patcher/PatcherConfig {
public synthetic fun <init> (Ljava/io/File;Ljava/io/File;Ljava/lang/String;Ljava/lang/String;ZILkotlin/jvm/internal/DefaultConstructorMarker;)V public synthetic fun <init> (Ljava/io/File;Ljava/io/File;Ljava/lang/String;Ljava/lang/String;ZILkotlin/jvm/internal/DefaultConstructorMarker;)V
} }
public final class app/revanced/patcher/PatcherContext { public final class app/revanced/patcher/PatcherContext : java/io/Closeable {
public fun close ()V
public final fun getPackageMetadata ()Lapp/revanced/patcher/PackageMetadata; public final fun getPackageMetadata ()Lapp/revanced/patcher/PackageMetadata;
} }
@ -152,9 +153,10 @@ public final class app/revanced/patcher/patch/BytecodePatchBuilder$InvokedFinger
public final fun getValue (Ljava/lang/Void;Lkotlin/reflect/KProperty;)Lapp/revanced/patcher/Match; public final fun getValue (Ljava/lang/Void;Lkotlin/reflect/KProperty;)Lapp/revanced/patcher/Match;
} }
public final class app/revanced/patcher/patch/BytecodePatchContext : app/revanced/patcher/patch/PatchContext { public final class app/revanced/patcher/patch/BytecodePatchContext : app/revanced/patcher/patch/PatchContext, java/io/Closeable {
public final fun classBy (Lkotlin/jvm/functions/Function1;)Lapp/revanced/patcher/util/proxy/ClassProxy; public final fun classBy (Lkotlin/jvm/functions/Function1;)Lapp/revanced/patcher/util/proxy/ClassProxy;
public final fun classByType (Ljava/lang/String;)Lapp/revanced/patcher/util/proxy/ClassProxy; public final fun classByType (Ljava/lang/String;)Lapp/revanced/patcher/util/proxy/ClassProxy;
public fun close ()V
public synthetic fun get ()Ljava/lang/Object; public synthetic fun get ()Ljava/lang/Object;
public fun get ()Ljava/util/Set; public fun get ()Ljava/util/Set;
public final fun getClasses ()Lapp/revanced/patcher/util/ProxyClassList; public final fun getClasses ()Lapp/revanced/patcher/util/ProxyClassList;

View file

@ -5,7 +5,9 @@ kotlin = "2.0.0"
kotlinx-coroutines-core = "1.8.1" kotlinx-coroutines-core = "1.8.1"
mockk = "1.13.10" mockk = "1.13.10"
multidexlib2 = "3.0.3.r3" multidexlib2 = "3.0.3.r3"
smali = "3.0.7" # Tracking https://github.com/google/smali/issues/64.
#noinspection GradleDependency
smali = "3.0.5"
binary-compatibility-validator = "0.15.1" binary-compatibility-validator = "0.15.1"
xpp3 = "1.1.4c" xpp3 = "1.1.4c"

View file

@ -154,7 +154,7 @@ class Patcher(private val config: PatcherConfig) : Closeable {
} }
} }
override fun close() = context.bytecodeContext.close() override fun close() = context.close()
/** /**
* Compile and save patched APK files. * Compile and save patched APK files.

View file

@ -5,6 +5,7 @@ import app.revanced.patcher.patch.Patch
import app.revanced.patcher.patch.ResourcePatchContext import app.revanced.patcher.patch.ResourcePatchContext
import brut.androlib.apk.ApkInfo import brut.androlib.apk.ApkInfo
import brut.directory.ExtFile import brut.directory.ExtFile
import java.io.Closeable
/** /**
* A context for the patcher containing the current state of the patcher. * A context for the patcher containing the current state of the patcher.
@ -12,7 +13,7 @@ import brut.directory.ExtFile
* @param config The configuration for the patcher. * @param config The configuration for the patcher.
*/ */
@Suppress("MemberVisibilityCanBePrivate") @Suppress("MemberVisibilityCanBePrivate")
class PatcherContext internal constructor(config: PatcherConfig) { class PatcherContext internal constructor(config: PatcherConfig): Closeable {
/** /**
* [PackageMetadata] of the supplied [PatcherConfig.apkFile]. * [PackageMetadata] of the supplied [PatcherConfig.apkFile].
*/ */
@ -37,4 +38,6 @@ class PatcherContext internal constructor(config: PatcherConfig) {
* The context for patches containing the current state of the bytecode. * The context for patches containing the current state of the bytecode.
*/ */
internal val bytecodeContext = BytecodePatchContext(config) internal val bytecodeContext = BytecodePatchContext(config)
override fun close() = bytecodeContext.close()
} }

View file

@ -192,6 +192,7 @@ internal object PatcherTest {
private operator fun Set<Patch<*>>.invoke(): List<PatchResult> { private operator fun Set<Patch<*>>.invoke(): List<PatchResult> {
every { patcher.context.executablePatches } returns toMutableSet() every { patcher.context.executablePatches } returns toMutableSet()
every { patcher.context.bytecodeContext.lookupMaps } returns LookupMaps(patcher.context.bytecodeContext.classes)
return runBlocking { patcher().toList() } return runBlocking { patcher().toList() }
} }