On 28/04/2022 05.04, di liu wrote:
Thank you for your response ^_^

    The video appears to be inaccessible unless access has specifically been
    granted in Google Drive.

I am sorry, have made it

      Does that device have a 64-bit ARM processor?

Yeah ,my device abi is arm64-v8a,And the so is compiled for armeabi-v7a

    i.e. the crash is not 100% reproducible? Can you give a rough estimation
    of how often it happens? (like "almost always", "about every third
    time",...)?

almost always

      It might also help to share a sample doc (e.g. attaching one to a bug

report on Bugzilla) if it happens more often with specific files.
see the accessories

Thanks for sharing the video and a sample file. With those, I can reproduce a crash.

Is that file confidential or can it be shared publicly (attached to a Bugzilla ticket)? (I can't read most of the text in it. :-))

    What does your autogen.input look like? (Or what options are you passing
    to ./autogen.sh manually?)

passing nothing to ./autogen.sh
the autogen.input containing this:
--with-distro=LibreOfficeAndroid
--with-android-sdk=/home/disco/Documents/dev_env/android_sdk
--with-android-ndk=/home/disco/Documents/dev_env/android_sdk/ndk/20.1.5948944
--with-ant-home=/home/disco/Documents/dev_env/apache-ant-1.10.12
--enable-debug
--enable-symbols="vcl/source/app/"

    For a 64-bit ARM debug build, using LLD with NDK 22.1.7171670 worked for
    me in the past, by applying this change on top of master:
    https://gerrit.libreoffice.org/c/core/+/130947
    <https://gerrit.libreoffice.org/c/core/+/130947>

    and then using an autogen.input containing this:

    --build=x86_64-unknown-linux-gnu
    --with-android-ndk=/home/michi/Android/Sdk/ndk/21.0.6113669
    --with-android-sdk=/home/michi/Android/Sdk
    --with-distro=LibreOfficeAndroidAarch64
    --enable-sal-log
    --with-external-tar=/home/michi/development/libreoffice-external
    --enable-ccache
    --enable-ld=lld
    --enable-dbgutil
    --with-jdk-home=/usr/lib/jvm/java-11-openjdk-amd64/

If i want to build debug version so must build a 64-bit ?

I suppose, in theory, 32-bit should also work. My practical experience with the Android toolchain was that several things that should work in theory didn't work in reality, and trying a different architecture, NDK version, or linker could give better results.

Trying an x86 or x86_64 AVD might also be worth trying.
A dbgutil build works fine for me on a Debian testing machine with 16 GB of RAM and an autogen.input containing

--build=x86_64-unknown-linux-gnu
--with-android-ndk=/home/michi/Android/Sdk/ndk/20.0.5594570/
--with-android-sdk=/home/michi/Android/Sdk
--with-distro=LibreOfficeAndroidX86
--enable-sal-log
--enable-ccache
--enable-dbgutil
--with-jdk-home=/usr/lib/jvm/java-11-openjdk-amd64/

so with your config that uses --enable-debug and restricts for what modules symbols are enabled, even less should be needed.

Addition:
Yesterday i use "bugreport" command on my device and found below logs:

    04-27 15:53:50.551 10316  3015  3287 W libc    : malloc(2292954)
    failed: returning null pointer
    04-27 15:53:50.552  1000  2433  6251 I chatty  : uid=1000(system)
    Binder:2433_6 expire 4 lines
    04-27 15:53:50.553 10316  3015  3287 E LibreOffice/androidinst:
    SalAbort: 'Unspecified application error'


There have a log "malloc(2292954) failed: returning null pointer" before the error 'Unspecified application error' (both of them come from my app(pid=10316)) So i wonder if it is possible that the crash was happened in java ? Because i found every time i slide the screen it's will trigger the render redraw which will trigger allocate a direct buffer

From what I have seen so far, the problem is that the app/system is running out of memory, caused by a memory leak on the C++ side.

Can you try whether the demo patch at https://gerrit.libreoffice.org/c/core/+/133581 makes the crash go away for you as well?

At least with the experimental editing mode disabled, this worked here.
I haven't tried with experimental mode enabled yet, which was running out of memory earlier without the patch in place, and was showing another out-of-memory-related error in the ADB log ouput with an x86 debug build.

(The patch is obviously not meant to be merged as is, just a demo where the problem is.)

PS: Adding dev list back to the conversation.

Reply via email to