diff options
| author | Po Lu | 2024-03-23 15:37:43 +0800 |
|---|---|---|
| committer | Po Lu | 2024-03-23 15:37:43 +0800 |
| commit | e39cb515a108682b520e499c334a600ee634fbf6 (patch) | |
| tree | dd246df15bd19360d665a6a85a5df470d783ef49 /src/androidterm.h | |
| parent | 7e32e8392ab77f9df08a1f11831cbba2242d721f (diff) | |
| download | emacs-e39cb515a108682b520e499c334a600ee634fbf6.tar.gz emacs-e39cb515a108682b520e499c334a600ee634fbf6.zip | |
Correctly handle non-BMP characters in Android content file names
* lisp/term/android-win.el (android-encode-jni)
(android-decode-jni, android-jni): New coding system, for
Android file names and runtime data.
* src/androidterm.h (syms_of_androidvfs): New function.
* src/androidvfs.c (struct android_special_vnode): New field
special_coding_system.
(android_saf_tree_readdir): Decode the file name using the
android-jni coding system.
(special_vnodes): <contents>: Specify a file name coding system.
(android_vfs_convert_name): New function.
(android_root_name): If a special coding system be specified for
a special vnode, convert components to it before invoking its
name function.
(syms_of_androidvfs): New symbol Qandroid_jni.
* src/emacs.c (android_emacs_init): Call syms_of_androidvfs.
Diffstat (limited to 'src/androidterm.h')
| -rw-r--r-- | src/androidterm.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/androidterm.h b/src/androidterm.h index ca6929bef0e..fd4cc99f641 100644 --- a/src/androidterm.h +++ b/src/androidterm.h | |||
| @@ -461,7 +461,7 @@ extern void sfntfont_android_shrink_scanline_buffer (void); | |||
| 461 | extern void init_sfntfont_android (void); | 461 | extern void init_sfntfont_android (void); |
| 462 | extern void syms_of_sfntfont_android (void); | 462 | extern void syms_of_sfntfont_android (void); |
| 463 | 463 | ||
| 464 | /* Defined in androidselect.c */ | 464 | /* Defined in androidselect.c. */ |
| 465 | 465 | ||
| 466 | #ifndef ANDROID_STUBIFY | 466 | #ifndef ANDROID_STUBIFY |
| 467 | 467 | ||
| @@ -473,6 +473,9 @@ extern void android_notification_action (struct android_notification_event *, | |||
| 473 | extern void init_androidselect (void); | 473 | extern void init_androidselect (void); |
| 474 | extern void syms_of_androidselect (void); | 474 | extern void syms_of_androidselect (void); |
| 475 | 475 | ||
| 476 | /* Defined in androidvfs.c. */ | ||
| 477 | extern void syms_of_androidvfs (void); | ||
| 478 | |||
| 476 | #endif | 479 | #endif |
| 477 | 480 | ||
| 478 | 481 | ||