From ea2b251ab2b2bc9a3d6f52a22408655be20de266 Mon Sep 17 00:00:00 2001 From: Po Lu Date: Fri, 10 May 2024 11:42:37 +0800 Subject: Remove redundant encoding of strings in androidvfs.c * java/org/gnu/emacs/EmacsService.java (getDocumentTrees): Accept PROVIDER as a String. * src/android.c (android_init_emacs_service): * src/androidvfs.c (android_saf_root_opendir): Adjust to match. --- java/org/gnu/emacs/EmacsService.java | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) (limited to 'java') diff --git a/java/org/gnu/emacs/EmacsService.java b/java/org/gnu/emacs/EmacsService.java index 1e5f72eed37..2dcaad16e50 100644 --- a/java/org/gnu/emacs/EmacsService.java +++ b/java/org/gnu/emacs/EmacsService.java @@ -1401,22 +1401,12 @@ public final class EmacsService extends Service otherwise. */ public String[] - getDocumentTrees (byte provider[]) + getDocumentTrees (String provider) { - String providerName; List treeList; List permissions; Uri uri; - try - { - providerName = new String (provider, "US-ASCII"); - } - catch (UnsupportedEncodingException exception) - { - return null; - } - permissions = resolver.getPersistedUriPermissions (); treeList = new ArrayList (); @@ -1425,7 +1415,7 @@ public final class EmacsService extends Service uri = permission.getUri (); if (DocumentsContract.isTreeUri (uri) - && uri.getAuthority ().equals (providerName) + && uri.getAuthority ().equals (provider) && permission.isReadPermission ()) /* Make sure the tree document ID is encoded. Refrain from encoding characters such as +:&?#, since they don't @@ -1435,6 +1425,9 @@ public final class EmacsService extends Service " +:&?#")); } + /* The empty string array that is ostensibly allocated to provide + the first argument provides just the type of the array to be + returned. */ return treeList.toArray (new String[0]); } -- cgit v1.2.1