diff options
| author | Po Lu <luangruo@yahoo.com> | 2023-07-29 11:24:07 +0800 |
|---|---|---|
| committer | Po Lu <luangruo@yahoo.com> | 2023-07-29 11:24:07 +0800 |
| commit | 47f97b5ae49af49ef3adcad4d4d9cab3668002ff (patch) | |
| tree | 157ee1d853cbef310060a6640d1ddcfafdbb6e3f /java/org/gnu/emacs/EmacsService.java | |
| parent | 25ef0c3a89a92e8f5ea12afe43224c84632e89c6 (diff) | |
Update Android port
* java/org/gnu/emacs/EmacsSafThread.java (EmacsSafThread, getCache)
(pruneCache1, pruneCache, cacheChild, cacheDirectoryFromCursor)
(documentIdFromName1, openDocumentDirectory1): Implement the
cache referred to by the commentary.
* java/org/gnu/emacs/EmacsService.java (deleteDocument):
Invalidate the cache upon document removal.
* src/androidvfs.c (android_saf_exception_check)
(android_document_id_from_name): Correctly preserve or set errno
in error cases.
Diffstat (limited to 'java/org/gnu/emacs/EmacsService.java')
| -rw-r--r-- | java/org/gnu/emacs/EmacsService.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/java/org/gnu/emacs/EmacsService.java b/java/org/gnu/emacs/EmacsService.java index e410754071b..e2abd6c96ef 100644 --- a/java/org/gnu/emacs/EmacsService.java +++ b/java/org/gnu/emacs/EmacsService.java @@ -1680,14 +1680,18 @@ public final class EmacsService extends Service deleteDocument (String uri, String id) throws FileNotFoundException { - Uri uriObject; + Uri uriObject, tree; - uriObject = Uri.parse (uri); - uriObject = DocumentsContract.buildDocumentUriUsingTree (uriObject, - id); + tree = Uri.parse (uri); + uriObject = DocumentsContract.buildDocumentUriUsingTree (tree, id); if (DocumentsContract.deleteDocument (resolver, uriObject)) - return 0; + { + if (storageThread != null) + storageThread.postInvalidateCache (tree, id); + + return 0; + } return -1; } |
