summaryrefslogtreecommitdiff
path: root/java/org/gnu/emacs/EmacsInputConnection.java
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2023-05-31 10:13:04 +0800
committerPo Lu <luangruo@yahoo.com>2023-05-31 10:13:04 +0800
commit57903519eb61632c4a85fbaf420109892955079a (patch)
tree3dc2f961217870b96e0a1e96f52e9bdb331e4413 /java/org/gnu/emacs/EmacsInputConnection.java
parent733a6776f9d665e5fd99bcc2a65c84c4360e277c (diff)
Update Android port
* java/debug.sh (is_root): Go back to using unix sockets; allow adb to forward them correctly. * java/org/gnu/emacs/EmacsInputConnection.java (getExtractedText): Don't print text if NULL. * java/org/gnu/emacs/EmacsService.java (EmacsService): New field `imSyncInProgress'. (updateIC): If an IM sync might be in progress, avoid deadlocks. * java/org/gnu/emacs/EmacsView.java (onCreateInputConnection): Set `imSyncInProgress' across synchronization point. * src/android.c (android_check_query): Use __atomic_store_n. (android_answer_query): New function. (android_begin_query): Set `android_servicing_query' to 2. Check once, and don't spin waiting for query to complete. (android_end_query): Use __atomic_store_n. (android_run_in_emacs_thread): Compare-and-exchange flag. If originally 1, fail. * src/textconv.c (really_set_composing_text): Clear conversion region if text is empty.
Diffstat (limited to 'java/org/gnu/emacs/EmacsInputConnection.java')
-rw-r--r--java/org/gnu/emacs/EmacsInputConnection.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/java/org/gnu/emacs/EmacsInputConnection.java b/java/org/gnu/emacs/EmacsInputConnection.java
index 21bbaca5d07..420da58c0f8 100644
--- a/java/org/gnu/emacs/EmacsInputConnection.java
+++ b/java/org/gnu/emacs/EmacsInputConnection.java
@@ -286,6 +286,14 @@ public final class EmacsInputConnection extends BaseInputConnection
text = EmacsNative.getExtractedText (windowHandle, request,
flags);
+ if (text == null)
+ {
+ if (EmacsService.DEBUG_IC)
+ Log.d (TAG, "getExtractedText: text is NULL");
+
+ return null;
+ }
+
if (EmacsService.DEBUG_IC)
Log.d (TAG, "getExtractedText: " + text.text + " @"
+ text.startOffset + ":" + text.selectionStart