From 2a7e9b53b12711f679238ee738a2ce57cc42c8ed Mon Sep 17 00:00:00 2001 From: xbzk Date: Thu, 1 Oct 2026 00:28:18 +0200 Subject: [PATCH] [android,ui] fixed shader cache clearing when changing drivers (#4496) - [x] I have read and followed the [Contribution Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/CONTRIBUTING.md#code-contributions). - [x] I have read and followed the [AI Policy](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/AI.md) - [x] I have read and followed the [Coding Guidelines](https://git.eden-emu.dev/eden-emu/eden/src/branch/master/docs/policies/Coding.md) to the best of my ability. ------------------- Trivial bug pending on backlog, where changing drivers was not clearing up sharder cache as expected. The driver flow (broken) was deleting externalFilesDir/shader/, while the visible cache-size control (working) DirectoryInitialization.userDirectory/cache/shader/. Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/4496 Reviewed-by: CamilleLaVey Reviewed-by: lizzie --- .../main/java/org/yuzu/yuzu_emu/model/DriverViewModel.kt | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/DriverViewModel.kt b/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/DriverViewModel.kt index 41f03c2488..fe53a99e3e 100644 --- a/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/DriverViewModel.kt +++ b/src/android/app/src/main/java/org/yuzu/yuzu_emu/model/DriverViewModel.kt @@ -23,6 +23,7 @@ import org.yuzu.yuzu_emu.model.Driver.Companion.toDriver import org.yuzu.yuzu_emu.utils.GpuDriverHelper import org.yuzu.yuzu_emu.NativeLibrary import org.yuzu.yuzu_emu.utils.GpuDriverMetadata +import org.yuzu.yuzu_emu.utils.DirectoryInitialization import org.yuzu.yuzu_emu.utils.NativeConfig import java.io.File @@ -146,11 +147,11 @@ class DriverViewModel : ViewModel() { private fun wipeGameShaders(game: Game) { viewModelScope.launch { withContext(Dispatchers.IO) { - val externalFilesDir = YuzuApplication.appContext.getExternalFilesDir(null) + val userDirectory = DirectoryInitialization.userDirectory ?: return@withContext val shaderDir = File( - externalFilesDir.absolutePath + - "/shader/" + game.settingsName.lowercase() + userDirectory + + "/cache/shader/" + game.settingsName.lowercase() ) if (shaderDir.exists()) { shaderDir.deleteRecursively()