Skip to content

Commit

Permalink
fix(YouTube Music/Flyout menu components): unable to patch due to inc…
Browse files Browse the repository at this point in the history
…orrect format
  • Loading branch information
inotia00 committed Sep 27, 2024
1 parent 1c99448 commit 96dc5cf
Showing 1 changed file with 22 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -104,31 +104,30 @@ object FlyoutMenuComponentsPatch : BaseBytecodePatch(
val onCheckedChangedListenerDefiningClass =
(onCheckedChangedListenerReference as MethodReference).definingClass

val onCheckedChangedMethod =
context.findMethodOrThrow(onCheckedChangedListenerDefiningClass) {
name == "onCheckedChanged"
}

val onCheckedChangedWalkerIndex =
onCheckedChangedMethod.indexOfFirstInstructionOrThrow {
val reference = getReference<MethodReference>()
opcode == Opcode.INVOKE_VIRTUAL
&& reference?.returnType == "V"
&& reference.parameterTypes.size == 1
&& reference.parameterTypes[0] == "Z"
}
context.findMethodOrThrow(onCheckedChangedListenerDefiningClass) {
name == "onCheckedChanged"
}.apply {
val onCheckedChangedWalkerIndex =
indexOfFirstInstructionOrThrow {
val reference = getReference<MethodReference>()
opcode == Opcode.INVOKE_VIRTUAL
&& reference?.returnType == "V"
&& reference.parameterTypes.size == 1
&& reference.parameterTypes[0] == "Z"
}

getWalkerMethod(context, onCheckedChangedWalkerIndex).apply {
val insertIndex = indexOfFirstInstructionOrThrow(Opcode.MOVE_RESULT)
val insertRegister =
getInstruction<OneRegisterInstruction>(insertIndex).registerA
getWalkerMethod(context, onCheckedChangedWalkerIndex).apply {
val insertIndex = indexOfFirstInstructionOrThrow(Opcode.MOVE_RESULT)
val insertRegister =
getInstruction<OneRegisterInstruction>(insertIndex).registerA

addInstructions(
insertIndex + 1, """
invoke-static {v$insertRegister}, $FLYOUT_CLASS_DESCRIPTOR->enableTrimSilenceSwitch(Z)Z
move-result v$insertRegister
"""
)
addInstructions(
insertIndex + 1, """
invoke-static {v$insertRegister}, $FLYOUT_CLASS_DESCRIPTOR->enableTrimSilenceSwitch(Z)Z
move-result v$insertRegister
"""
)
}
}
}
}
Expand Down

0 comments on commit 96dc5cf

Please sign in to comment.