Bug Hunting Session
Bug 122749 - Extension Manager freezes after installing oxt on Mac LibreOffice version 6.1.4.2
Summary: Extension Manager freezes after installing oxt on Mac LibreOffice version 6.1...
Status: RESOLVED WORKSFORME
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Extensions (show other bugs)
Version:
(earliest affected)
6.1.4.2 release
Hardware: x86-64 (AMD64) Mac OS X (All)
: high major
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisectRequest, regression
Depends on:
Blocks:
 
Reported: 2019-01-16 01:20 UTC by Jeremy
Modified: 2019-04-11 18:17 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
lldb backtrace (1.56 MB, text/plain)
2019-01-17 09:27 UTC, Alex Thurgood
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jeremy 2019-01-16 01:20:41 UTC
Description:
The Extension Manager dialog freezes after installing an extension on Mac for LibreOffice version 6.1.4.2.  This issue only affects Mac.  Windows and Linux are fine.  This issue does NOT occur in version 6.0.7.3.  After this bug freezes the Extension Manager dialog you have to quit LibreOffice--when you restart you find the extension has been installed correctly.  I tested using the Code Highlighter Writer extension: https://extensions.libreoffice.org/extensions/code-highlighter, but affects all extension I tried.

Steps to Reproduce:
1.On Mac, using version 6.1.4.2 open Writer
2.From the Extension Manager try to install an extension, for example "Code Highlighter"
3.Install for one user only
4.The dialog will freeze

Actual Results:
The Extension Manager dialog will freeze after installing the extension.

Expected Results:
The Extension Manager dialog should not freeze after installing the extension.


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Comment 1 Jeremy 2019-01-16 09:56:17 UTC
This issue is also present in 6.2.0.2.
Comment 2 Jeremy 2019-01-16 11:27:03 UTC
I just confirmed this does NOT happen in version 6.1.4.1.
Comment 3 Alex Thurgood 2019-01-17 08:25:17 UTC
Pretty certain that this is a DUP. Need to find it.
Comment 4 Alex Thurgood 2019-01-17 08:31:12 UTC
@Jeremy: can you let us know which version of macOS you are using ? Thanks.
Comment 5 Alex Thurgood 2019-01-17 08:39:02 UTC
@Jeremy: the general behaviour you describe is similar to that reported in bug 99784, however that was fixed for 6.0, so we will need more details :

- how exactly are you installing the extension (your step 2)?

- via drag and drop of the OXT file onto the LO dock icon ?

- via the Extensions Manager UI, chossing an extension from Finder, and then clicking "Add" ?
Comment 6 Alex Thurgood 2019-01-17 08:52:53 UTC
@Jeremy : don't worry, I can reproduce this if I select the "install for single user" option in the Extensions Manager UI.

I don't reproduce this if I install for all users.

lldb indicates that the problem is here :

Process 4410 resuming
Process 4410 stopped
* thread #24, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=2, address=0x7ffeef3ff7d8)
    frame #0: 0x00007fff2fe07fca CoreGraphics`argb32_mark + 146
CoreGraphics`argb32_mark:
->  0x7fff2fe07fca <+146>: movq   %rsi, -0x10d8(%rbp)
    0x7fff2fe07fd1 <+153>: movq   0x88(%r15), %r14
    0x7fff2fe07fd8 <+160>: movl   %edx, %eax
    0x7fff2fe07fda <+162>: andl   $0xff0000, %eax           ; imm = 0xFF0000 
Target 0: (soffice) stopped.
Comment 7 Alex Thurgood 2019-01-17 08:54:58 UTC
@Jan-Marek, Michael : thought you might be interested in this one. It seems similar to bug 99784 which was fixed for 6.0.

However, the option of only installing for a single user seems to trigger the same behaviour.
Comment 8 Alex Thurgood 2019-01-17 09:08:36 UTC
FWIW reproduced on master :



Version: 6.3.0.0.alpha0+
Build ID: 31c1995037a7ad408a5af6917288d8e3888a472d
CPU threads: 4; OS: Mac OS X 10.14.2; UI render: default; VCL: osx; 
Locale: fr-FR (fr_FR.UTF-8); UI-Language: en-US
Calc: threaded
Comment 9 Alex Thurgood 2019-01-17 09:26:45 UTC
Steps to reproduce :

1) Start LO
2) Menu Tools > Extension Manager
3) Click on "Add". Select an extension from the Finder.
4) Click on the "Only For Me" button.
5) Extension Manager UI either hangs on attempting installation, or after the extension has been installed - the Extension Manager UI window remains unresponsive and can not be closed and does not respond to mouse click interaction.
Comment 10 Alex Thurgood 2019-01-17 09:27:47 UTC
Created attachment 148391 [details]
lldb backtrace

I managed to obtain the enclosed backtrace from the hung LO process - whether or not it is relevant is another matter...
Comment 11 Michael Meeks 2019-01-17 10:30:33 UTC
Trace (thanks Alex) looks rather like the other problem we have when building with a modern compiler for OSX. I would rather suspect that we are doing a ton of rendering - at high frequency - and that OSX is batching all of this up to be rendered later. Then - when it comes to render it - it tries to do clever scene analytics to partition the work (which makes sense) - but their apparently recursive algorithm blows up for large amounts of data and hangs.

May be compounded by some producer/consumer mismatch I guess - such that one thread is queueing new things to render regularly while the other is fighting a loosing battle to partition / analyse that for GPU dispatch somewhere else. At least, that's my guess.

Might be interesting to see what VCL rendering APIs are being called - and/or how much 'paint' stuff is actually going on - possibly a SAL_LOG=1 output for a dbgutil build would show that.

Thanks !
Comment 12 Jeremy 2019-02-06 09:46:24 UTC
This seems to be fixed in 6.1.5.2 and 6.2.0.3.  Thanks!
Comment 13 Caolán McNamara 2019-04-11 14:34:20 UTC
seeing as the original report's problem seems to have gone away, lets close this
Comment 14 steve -_- 2019-04-11 18:17:03 UTC
WORKSFORME as there is no commit if I am not mistaken.