[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.2' - bridges/source

Stephan Bergmann (via logerrit) logerrit at kemper.freedesktop.org
Wed Oct 30 18:01:51 UTC 2019


 bridges/source/cpp_uno/gcc3_linux_arm/share.hxx |    9 +++++++++
 1 file changed, 9 insertions(+)

New commits:
commit a515d30ee39bf5d1326ae788645ea892917869a3
Author:     Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Tue Dec 11 15:01:30 2018 +0100
Commit:     Jan Holesovsky <kendy at collabora.com>
CommitDate: Wed Oct 30 19:00:49 2019 +0100

    Adapt gcc3_linux_arm __cxa_exception to NDK 18 libc++abi
    
    ...which adds a member, and will be relevant when switching armeabi-v7a to
    libc++/libc++abi/libunwind (coming soon).
    
    Change-Id: I1f98f50ca299a583e73e0dbd6c8c94d973329f3a
    Reviewed-on: https://gerrit.libreoffice.org/64966
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    Reviewed-on: https://gerrit.libreoffice.org/81782
    Reviewed-by: Jan Holesovsky <kendy at collabora.com>
    Tested-by: Jan Holesovsky <kendy at collabora.com>

diff --git a/bridges/source/cpp_uno/gcc3_linux_arm/share.hxx b/bridges/source/cpp_uno/gcc3_linux_arm/share.hxx
index d7b7ff370b52..0ff974570ee7 100644
--- a/bridges/source/cpp_uno/gcc3_linux_arm/share.hxx
+++ b/bridges/source/cpp_uno/gcc3_linux_arm/share.hxx
@@ -64,6 +64,15 @@ public:
 namespace __cxxabiv1 {
     struct __cxa_exception
     {
+#if defined _LIBCPPABI_VERSION // detect libc++abi
+#if defined __LP64__ || defined __ARM_EABI__
+        // Quoting android-ndk-r18b/sources/cxx-stl/llvm-libc++abi/src/cxa_exception.hpp: "This is a
+        // new field to support C++ 0x exception_ptr. For binary compatibility it is at the start of
+        // this struct which is prepended to the object thrown in __cxa_allocate_exception."
+        std::size_t referenceCount;
+#endif
+#endif
+
         std::type_info *exceptionType;
         void (*exceptionDestructor)(void *);
 


More information about the Libreoffice-commits mailing list