android: fs: Fix Exists / IsFile for SAF.
This commit is contained in:
		| @@ -19,6 +19,8 @@ import org.yuzu.yuzu_emu.activities.EmulationActivity | ||||
| import org.yuzu.yuzu_emu.utils.DocumentsTree.Companion.isNativePath | ||||
| import org.yuzu.yuzu_emu.utils.FileUtil.getFileSize | ||||
| import org.yuzu.yuzu_emu.utils.FileUtil.openContentUri | ||||
| import org.yuzu.yuzu_emu.utils.FileUtil.exists | ||||
| import org.yuzu.yuzu_emu.utils.FileUtil.isDirectory | ||||
| import org.yuzu.yuzu_emu.utils.Log.error | ||||
| import org.yuzu.yuzu_emu.utils.Log.verbose | ||||
| import org.yuzu.yuzu_emu.utils.Log.warning | ||||
| @@ -85,6 +87,22 @@ object NativeLibrary { | ||||
|         } else getFileSize(appContext, path) | ||||
|     } | ||||
|  | ||||
|     @Keep | ||||
|     @JvmStatic | ||||
|     fun exists(path: String?): Boolean { | ||||
|         return if (isNativePath(path!!)) { | ||||
|             YuzuApplication.documentsTree!!.exists(path) | ||||
|         } else exists(appContext, path) | ||||
|     } | ||||
|  | ||||
|     @Keep | ||||
|     @JvmStatic | ||||
|     fun isDirectory(path: String?): Boolean { | ||||
|         return if (isNativePath(path!!)) { | ||||
|             YuzuApplication.documentsTree!!.isDirectory(path) | ||||
|         } else isDirectory(appContext, path) | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Returns true if pro controller isn't available and handheld is | ||||
|      */ | ||||
|   | ||||
| @@ -36,6 +36,11 @@ class DocumentsTree { | ||||
|         return resolvePath(filepath) != null | ||||
|     } | ||||
|  | ||||
|     fun isDirectory(filepath: String): Boolean { | ||||
|         val node = resolvePath(filepath) | ||||
|         return node != null && node.isDirectory | ||||
|     } | ||||
|  | ||||
|     private fun resolvePath(filepath: String): DocumentsNode? { | ||||
|         val tokens = StringTokenizer(filepath, File.separator, false) | ||||
|         var iterator = root | ||||
|   | ||||
		Reference in New Issue
	
	Block a user