emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master db704687bb9: Update Android port


From: Po Lu
Subject: master db704687bb9: Update Android port
Date: Sun, 1 Oct 2023 23:00:52 -0400 (EDT)

branch: master
commit db704687bb9992212cec0d5435f6dcd75161e229
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    Update Android port
    
    * java/AndroidManifest.xml.in: Exclude non-files from opening in
    Emacs.
    
    * java/org/gnu/emacs/EmacsOpenActivity.java (onCreate): Avert
    crash should scheme be NULL.
---
 java/AndroidManifest.xml.in               | 5 ++++-
 java/org/gnu/emacs/EmacsOpenActivity.java | 6 ++++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/java/AndroidManifest.xml.in b/java/AndroidManifest.xml.in
index d4017a055dd..9ba9dabde81 100644
--- a/java/AndroidManifest.xml.in
+++ b/java/AndroidManifest.xml.in
@@ -110,7 +110,10 @@ along with GNU Emacs.  If not, see 
<https://www.gnu.org/licenses/>. -->
        <action android:name="android.intent.action.EDIT"/>
        <action android:name="android.intent.action.PICK"/>
         <category android:name="android.intent.category.DEFAULT"/>
-       <data android:mimeType="*/*"/>
+       <!-- Don't offer to start Emacs for URLs that designate
+            resources other than files.  -->
+       <data android:mimeType="*/*" android:scheme="file"/>
+       <data android:mimeType="*/*" android:scheme="content"/>
       </intent-filter>
 
       <!-- Facilitate opening org-protocol:// URLs as well, the same
diff --git a/java/org/gnu/emacs/EmacsOpenActivity.java 
b/java/org/gnu/emacs/EmacsOpenActivity.java
index d27139e98bc..202b3c8c5dc 100644
--- a/java/org/gnu/emacs/EmacsOpenActivity.java
+++ b/java/org/gnu/emacs/EmacsOpenActivity.java
@@ -438,6 +438,12 @@ public final class EmacsOpenActivity extends Activity
 
        scheme = uri.getScheme ();
 
+       /* It is possible for scheme to be NULL, under Android 2.3 at
+          least.  */
+
+       if (scheme == null)
+         return;
+
        /* If URL is a mailto URI, call `message-mailto' much the same
           way emacsclient-mail.desktop does.  */
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]