Avoid virtual function dispatch overhead

* src/androidvfs.c (android_saf_move_document): Circumvent JNI
dynamic function dispatch on call to final method.
This commit is contained in:
Po Lu 2023-09-05 10:43:07 +08:00
parent 483c6f191f
commit eb9cfa8852

View file

@ -4410,11 +4410,13 @@ android_saf_move_document (const char *uri, char **doc_id,
/* Do the rename. */
method = service_class.move_document;
result = (*android_java_env)->CallObjectMethod (android_java_env,
emacs_service,
method, uri1,
doc_id1, dir_name1,
dst_id1, src_id1);
result
= (*android_java_env)->CallNonvirtualObjectMethod (android_java_env,
emacs_service,
service_class.class,
method, uri1,
doc_id1, dir_name1,
dst_id1, src_id1);
if (android_saf_exception_check (5, src_id1, dst_id1, dir_name1,
doc_id1, uri1))
{