fix(Reddit - Remove subreddit dialog): Patch fails at Reddit 2025.05.0+ https://github.com/inotia00/ReVanced_Extended/issues/2762

This commit is contained in:
inotia00 2025-02-07 18:01:54 +09:00
parent c575ffc45b
commit 2ec24f95ec
2 changed files with 14 additions and 8 deletions

View File

@ -9,6 +9,7 @@ import app.revanced.patches.reddit.utils.extension.Constants.PATCHES_PATH
import app.revanced.patches.reddit.utils.patch.PatchList.REMOVE_SUBREDDIT_DIALOG
import app.revanced.patches.reddit.utils.settings.is_2024_41_or_greater
import app.revanced.patches.reddit.utils.settings.is_2025_01_or_greater
import app.revanced.patches.reddit.utils.settings.is_2025_05_or_greater
import app.revanced.patches.reddit.utils.settings.settingsPatch
import app.revanced.patches.reddit.utils.settings.updatePatchStatus
import app.revanced.util.fingerprint.methodOrThrow
@ -53,15 +54,17 @@ val subRedditDialogPatch = bytecodePatch(
}
// Not used in latest Reddit client.
frequentUpdatesSheetScreenFingerprint.methodOrThrow().apply {
val index = indexOfFirstInstructionReversedOrThrow(Opcode.RETURN_OBJECT)
val register =
getInstruction<OneRegisterInstruction>(index).registerA
if (!is_2025_05_or_greater) {
frequentUpdatesSheetScreenFingerprint.methodOrThrow().apply {
val index = indexOfFirstInstructionReversedOrThrow(Opcode.RETURN_OBJECT)
val register =
getInstruction<OneRegisterInstruction>(index).registerA
addInstruction(
index,
"invoke-static {v$register}, $EXTENSION_CLASS_DESCRIPTOR->dismissDialog(Landroid/view/View;)V"
)
addInstruction(
index,
"invoke-static {v$register}, $EXTENSION_CLASS_DESCRIPTOR->dismissDialog(Landroid/view/View;)V"
)
}
}
if (is_2025_01_or_greater) {

View File

@ -39,6 +39,8 @@ var is_2024_41_or_greater = false
private set
var is_2025_01_or_greater = false
private set
var is_2025_05_or_greater = false
private set
private val settingsBytecodePatch = bytecodePatch(
description = "settingsBytecodePatch"
@ -62,6 +64,7 @@ private val settingsBytecodePatch = bytecodePatch(
is_2024_26_or_greater = 2024260 <= versionNumber
is_2024_41_or_greater = 2024410 <= versionNumber
is_2025_01_or_greater = 2025010 <= versionNumber
is_2025_05_or_greater = 2025050 <= versionNumber
}
/**