Bug 85524 - OSX - CRASH sigabrt when opening presentation in Impress containing video clips
Summary: OSX - CRASH sigabrt when opening presentation in Impress containing video clips
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
4.4.0.0.alpha1
Hardware: x86-64 (AMD64) macOS (All)
: highest blocker
Assignee: Julien Nabet
URL:
Whiteboard: target:4.4.0
Keywords: haveBacktrace, regression
Depends on:
Blocks:
 
Reported: 2014-10-27 17:20 UTC by Alex Thurgood
Modified: 2014-10-31 15:00 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
crash trace (73.08 KB, text/plain)
2014-10-27 17:20 UTC, Alex Thurgood
Details
full backtrace (31.45 KB, text/plain)
2014-10-27 17:35 UTC, Alex Thurgood
Details
apple trace from daily build (109.68 KB, text/plain)
2014-10-28 08:36 UTC, Alex Thurgood
Details
another full bt (110.62 KB, text/plain)
2014-10-28 09:13 UTC, Alex Thurgood
Details
minimal test file (1.45 MB, application/vnd.oasis.opendocument.presentation)
2014-10-28 09:44 UTC, Alex Thurgood
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alex Thurgood 2014-10-27 17:20:21 UTC
Created attachment 108524 [details]
crash trace

Daily build 

Version: 4.4.0.0.alpha1+
Build ID: 6ba8b7f5eacac969e4781d63718083a05491b1bc
TinderBox: MacOSX-10.10@61, Branch:master, Time: 2014-10-24_01:13:49


Attempt to open ODP file containing video clips, some of which are unsupported by LO.

Crash before loading completes.

Trace attached.
Comment 1 Alex Thurgood 2014-10-27 17:21:00 UTC
Same file opens in LO 4322, regression
Comment 2 Alex Thurgood 2014-10-27 17:21:56 UTC
Terminal output

/Applications/LibreOfficeDev.app/Contents/MacOS/soffice
libc++abi.dylib: terminating with unexpected exception of type std::bad_alloc: std::bad_alloc
Abort trap: 6
Comment 3 Alex Thurgood 2014-10-27 17:35:23 UTC
Created attachment 108525 [details]
full backtrace
Comment 4 Alex Thurgood 2014-10-28 08:36:26 UTC
Created attachment 108559 [details]
apple trace from daily build

possibly more useful trace indicating that there is a problem with the jvm
Comment 5 Alex Thurgood 2014-10-28 09:13:19 UTC
Test file here

https://www.dropbox.com/s/kx5cvemji9ei755/testvidinsert.odp?dl=0
Comment 6 Alex Thurgood 2014-10-28 09:13:48 UTC
Created attachment 108563 [details]
another full bt
Comment 7 Alex Thurgood 2014-10-28 09:28:36 UTC
Confirmed on separate machine running osx 10.10 and same master build
Comment 8 Alex Thurgood 2014-10-28 09:44:14 UTC
Created attachment 108566 [details]
minimal test file
Comment 9 Alex Thurgood 2014-10-28 09:44:51 UTC
Added minimal test file to reproduce
Comment 10 Alex Thurgood 2014-10-28 09:50:12 UTC
Build switches fwiw

--with-ant-home=/Volumes/HD1/Shared/Repos/LO/packages/apache-ant-1.9.2
--without-junit
--enable-64-bit
--with-extra-buildid
--enable-debug
--enable-ext-nlpsolver
--enable-ext-google-docs
--enable-ext-languagetool
--enable-ext-diagram
--enable-ext-typo
--enable-ext-validator
--enable-ext-watch-window
--enable-extra-template
--enable-extra-gallery
--enable-ext-wiki-publisher
--enable-extension-integration
--with-lang=fr
--with-help
--enable-epm
--with-package-format=dmg
--enable-ext-mariadb-connector
--with-system-mariadb
--enable-bundle-mariadb
Comment 11 Alex Thurgood 2014-10-28 11:33:21 UTC
Hmmm, is this the problem ?

   frame #0: 0x00000001053782a9 libvcllo.dylib`AquaSalObject::AquaSalObject(this=0x000000013e6ac950, pFrame=0x000000011c808420, pWindowData=0x0000000000000000) + 217 at salobj.cxx:41
   38  	{
   39  	    maSysData.nSize = sizeof( maSysData );
   40  	    maSysData.mpNSView = NULL;
-> 41  	    maSysData.mbOpenGL = pWindowData->bOpenGL;
   42  	
   43  	    NSRect aInitFrame = { NSZeroPoint, { 20, 20 } };
   44  	    mpClipView = [[NSClipView alloc] initWithFrame: aInitFrame ];
Comment 12 Julien Nabet 2014-10-29 07:04:25 UTC
Alex: quite agree with your last comment since we can see this on your bt:
pWindowData=0x0000000000000000
Comment 14 Julien Nabet 2014-10-29 10:40:36 UTC
Alex: I think it's due to http://cgit.freedesktop.org/libreoffice/core/commit/?id=e65acd2ebbb85d557068692674f317ff3a038e9b

Markus: what about this change?
-maSysData.mbOpenGL = pWindowData->bOpenGL;
+maSysData.mbOpenGL = false;


Then putting 
maSysData.mbOpenGL = pWindowData->bOpenGL;
in "if (pWindowData && pWindowData->bOpenGL)" block.
See http://opengrok.libreoffice.org/xref/core/vcl/osx/salobj.cxx#27

(Sorry, I'm not at home for the moment to create a real patch on gerrit)

Would it be ok for you?
Comment 15 Commit Notification 2014-10-29 21:10:57 UTC
Julien Nabet committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=354a5f1ab65a2d36cceb948331edd4578ac349c6

Resolves fdo#85524: OSX Crash Impress with videoclip

It will be available in 4.4.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 16 Julien Nabet 2014-10-29 21:13:10 UTC
Finally I commited the patch (after having simplified just a bit), see http://cgit.freedesktop.org/libreoffice/core/commit/?id=354a5f1ab65a2d36cceb948331edd4578ac349c6.
After all, it's master branch and the fix is very straightforward.

Alex: could you update your sources and confirm it's ok?
Comment 17 Alex Thurgood 2014-10-31 14:59:54 UTC
Fix works in master Version: 4.4.0.0.alpha1+
Build ID: 4dbed9ef9a2299587d75bd9fae96b05dac0675c3

Thanks Julien !

Alex