TeamWin / android_bootable_recovery

1.3k stars 408 forks source link

Changing twrp folder name breaks theming: #265

Closed Dusk-Golem closed 1 year ago

Dusk-Golem commented 1 year ago

Device codename: jackpotlte (Samsung Galaxy A8 2018 - SM-A530F) TWRP version: 3.6.2_9.0

WHAT STEPS WILL REPRODUCE THE PROBLEM?

From TWRP homepage, select advanced settings, select "change twrp folder name", chose any random name (I chose "RECOVERY" & "douche") and reboot recovery. Place theme file "ui.zip" inside ""newly named twrp folder"/theme" and reboot again.

WHAT IS THE EXPECTED RESULT?

TWRP should detect the /theme/ui.zip placed inside its folder and change the theme of recovery.

WHAT HAPPENS INSTEAD?

Changing twrp folder name and placing /theme/ui.zip inside it does not change the theme. Looking at recovery logs, the recovery still looks inside the default location (/data/media/0/TWRP/theme/ui.zip) even though the folder name is changed from inside twrp settings.

ADDITIONAL INFORMATION

No error appears on the recovery console as well. Changing recovery folder name [#62] to default "TWRP" fixes the problem. Please fix this since some apps have started detecting twrp folder as a detection method of rooted/jailbroken devices. I have also attached ui.zip for reference

/tmp/recovery.log: recovery.log dmesg: dmesg.log /theme/ui.zip: ui.zip

Dusk-Golem commented 1 year ago

@CaptainThrowback, In line 853 (Also in 819, I may be wrong) inside file gui.cpp, shouldn't the correct code be something like this?

theme_path += TWFunc::Check_For_TwrpFolder() + "/theme/ui.zip";

For custom folder name I mean, TWRP folder name should not be included for a userdefined folder name since, for changed twrp folder, recovery should be looking inside "/data/media/0/TWRP FOLDER NAME SET BY USER/theme/ui.zip" for custom theme instead of the default folder.