summaryrefslogtreecommitdiff
path: root/bridges
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@collabora.com>2019-11-29 16:03:27 +0100
committerAndras Timar <andras.timar@collabora.com>2020-05-18 17:43:03 +0200
commitc4bbed0e22d3e512938b8e2de43a793dcf6cc50f (patch)
tree0ad5dc8b502895a2638f86d0d8d84a607d1db9ed /bridges
parente688b4259deacd8005d98f8497ea3101ffe4fd11 (diff)
android: Avoid throwing exceptions through the bridges.
From some reason it does not work, so let's do the same we are doing on iOS; at least for now. Change-Id: I915f8683a112548fc3defc1114f9dce3aa7be30e Reviewed-on: https://gerrit.libreoffice.org/84067 Reviewed-by: Tor Lillqvist <tml@collabora.com> Tested-by: Tor Lillqvist <tml@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/84204 Tested-by: Jenkins Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Diffstat (limited to 'bridges')
-rw-r--r--bridges/source/cpp_uno/gcc3_linux_aarch64/cpp2uno.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/bridges/source/cpp_uno/gcc3_linux_aarch64/cpp2uno.cxx b/bridges/source/cpp_uno/gcc3_linux_aarch64/cpp2uno.cxx
index d867a04dd299..4865f49a0421 100644
--- a/bridges/source/cpp_uno/gcc3_linux_aarch64/cpp2uno.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_aarch64/cpp2uno.cxx
@@ -457,10 +457,14 @@ unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions(
void bridges::cpp_uno::shared::VtableFactory::flushCode(
unsigned char const * begin, unsigned char const * end)
{
+#ifndef ANDROID
static void (*clear_cache)(unsigned char const *, unsigned char const *)
= (void (*)(unsigned char const *, unsigned char const *)) dlsym(
RTLD_DEFAULT, "__clear_cache");
(*clear_cache)(begin, end);
+#else
+ __builtin___clear_cache((char*)begin, (char*)end);
+#endif
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */