office-gobmx/vcl/source/gdi
Stephan Bergmann 4069417bc3 Do not arbitrarily lock a mutex
...without unlocking it again.  This nonsense /does/ cause deadlocks and hours
of frustrated debugging on --enable-dbgutil Mac OS X, e.g., after this code is
called as

0  VirtualDevice::~VirtualDevice (this=0xa363200) at lo/core/vcl/source/gdi/virdev.cxx:187
1  0x05541677 in VirtualDevice::~VirtualDevice (this=0xa363200) at lo/core/vcl/source/gdi/virdev.cxx:182
2  0x0554164a in VirtualDevice::~VirtualDevice (this=0xa363200) at lo/core/vcl/source/gdi/virdev.cxx:182
3  0x05646a76 in StatusBar::~StatusBar (this=0xa362f10) at lo/core/vcl/source/window/status.cxx:176
4  0x05646947 in StatusBar::~StatusBar (this=0xa362f10) at lo/core/vcl/source/window/status.cxx:168
5  0x0564691a in StatusBar::~StatusBar (this=0xa362f10) at lo/core/vcl/source/window/status.cxx:168
6  0x0396cf2f in VCLXDevice::DestroyOutputDevice (this=0x390356cc) at lo/core/toolkit/source/awt/vclxdevice.cxx:56
7  0x039d4345 in VCLXWindow::dispose (this=0x390356cc) at lo/core/toolkit/source/awt/vclxwindow.cxx:956
8  0x039d452c in non-virtual thunk to VCLXWindow::dispose() (this=0x390356f8) at lo/core/toolkit/source/awt/vclxwindow.cxx:976
9  0x10dc6126 in framework::ProgressBarWrapper::setStatusBar (this=0x39002aac, rStatusBar=@0xb122e050, bOwnsInstance=0) at lo/core/framework/source/uielement/progressbarwrapper.cxx:63
10 0x10c17c84 in framework::LayoutManager::implts_backupProgressBarWrapper (this=0x19582c48) at lo/core/framework/source/layoutmanager/layoutmanager.cxx:943
11 0x10c16ca7 in framework::LayoutManager::implts_destroyProgressBar (this=0x19582c48) at lo/core/framework/source/layoutmanager/layoutmanager.cxx:959
12 0x10c13928 in framework::LayoutManager::implts_destroyStatusBar (this=0x19582c48) at lo/core/framework/source/layoutmanager/layoutmanager.cxx:837
13 0x10c135cb in framework::LayoutManager::implts_destroyElements (this=0x19582c48) at lo/core/framework/source/layoutmanager/layoutmanager.cxx:446
14 0x10c1a022 in framework::LayoutManager::setDockingAreaAcceptor (this=0x19582c48, xDockingAreaAcceptor=@0xb122e318) at lo/core/framework/source/layoutmanager/layoutmanager.cxx:1344
15 0x10c1b199 in non-virtual thunk to framework::LayoutManager::setDockingAreaAcceptor(com::sun::uno::Reference<com::sun::ui::XDockingAreaAcceptor> const&) (this=0x19582c60, xDockingAreaAcceptor=@0xb122e318) at lo/core/framework/source/layoutmanager/layoutmanager.cxx:1363
16 0x10cc26fb in framework::lcl_disableLayoutManager (xLayoutManager=@0x39013338, xFrame=@0xb122e3d8) at lo/core/framework/source/services/frame.cxx:505
17 0x10cca452 in framework::Frame::dispose (this=0x3901320c) at lo/core/framework/source/services/frame.cxx:1851
18 0x10cc925e in framework::Frame::close (this=0x3901320c, bDeliverOwnership=1) at lo/core/framework/source/services/frame.cxx:1644
19 0x10cc933b in non-virtual thunk to framework::Frame::close(unsigned char) (this=0x39013238, bDeliverOwnership=1) at lo/core/framework/source/services/frame.cxx:1645
20 0x0cfb07ad in (anonymous namespace)::callVirtualMethod (pAdjustedThisPtr=0x39013238, nVtableIndex=5, pRegisterReturn=0x0, pReturnTypeDescr=0xa03e240, bSimpleReturn=true, pStackLongs=0xb122e610, nStackLongs=2) at lo/core/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx:75
21 0x0cfb01aa in (anonymous namespace)::cpp_call (pThis=0x179e2b20, aVtableSlot={offset = 0, index = 5}, pReturnTypeRef=0xa03e240, nParams=1, pParams=0x179ec9e0, pUnoReturn=0x0, pUnoArgs=0xa3652a0, ppUnoExc=0xb122eaac) at lo/core/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx:270
22 0x0cfaf785 in bridges::cpp_uno::shared::unoInterfaceProxyDispatch (pUnoI=0x179e2b20, pMemberDescr=0x179ed690, pReturn=0x0, pArgs=0xa3652a0, ppException=0xb122eaac) at lo/core/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx:461
23 0x10817d68 in binaryurp::IncomingRequest::execute_throw (this=0x179edf90, returnValue=0xb122ed58, outArguments=0xb122ed48) at lo/core/binaryurp/source/incomingrequest.cxx:245
24 0x10816293 in binaryurp::IncomingRequest::execute (this=0x179edf90) at lo/core/binaryurp/source/incomingrequest.cxx:74
25 0x10829105 in request (pThreadSpecificData=0x179edf90) at lo/core/binaryurp/source/reader.cxx:85
26 0x00bc39fe in cppu_threadpool::JobQueue::enter (this=0x179db470, nDisposeId=171320704, bReturnWhenNoJob=1) at lo/core/cppu/source/threadpool/jobqueue.cxx:115
27 0x00bc67f1 in cppu_threadpool::ORequestThread::run (this=0xa362580) at lo/core/cppu/source/threadpool/thread.cxx:171
28 0x00bc698c in non-virtual thunk to cppu_threadpool::ORequestThread::run() (this=0xa362588) at lo/core/cppu/source/threadpool/thread.cxx:201
29 0x00bc81ad in threadFunc (param=0xa362588) at thread.hxx:187
30 0x00016f4c in osl_thread_start_Impl (pData=0xa362030) at lo/core/sal/osl/unx/thread.c:251
31 0x9560eed9 in _pthread_start ()
32 0x956126de in thread_start ()

in JunitTest_extensions_unoapi; but it is also called regularly when running a
plain backing-windows soffice instance,

0  VirtualDevice::~VirtualDevice (this=0xbfff7a60) at lo/core/vcl/source/gdi/virdev.cxx:187
1  0x05541677 in VirtualDevice::~VirtualDevice (this=0xbfff7a60) at lo/core/vcl/source/gdi/virdev.cxx:182
2  0x10ca4f3d in framework::BackingWindow::Paint (this=0xa9da800) at lo/core/framework/source/services/backingwindow.cxx:699
3  0x05698dd8 in Window::ImplCallPaint (this=0xa9da800, pRegion=0x179d55c0, nPaintFlags=60) at lo/core/vcl/source/window/window.cxx:2462
4  0x05698f4b in Window::ImplCallPaint (this=0xa08dad0, pRegion=0x179c7270, nPaintFlags=60) at lo/core/vcl/source/window/window.cxx:2486
5  0x05698f4b in Window::ImplCallPaint (this=0xa08dd90, pRegion=0x0, nPaintFlags=60) at lo/core/vcl/source/window/window.cxx:2486
6  0x0569a141 in Window::Update (this=0xa08dd90) at lo/core/vcl/source/window/window.cxx:7505
7  0x056c9881 in ImplHandlePaint (pWindow=0xa08dd90, rBoundRect=@0xbfff8198, bImmediateUpdate=true) at lo/core/vcl/source/window/winproc.cxx:1575
8  0x056c6e88 in ImplWindowFrameProc (pWindow=0xa08dd90, nEvent=8, pEvent=0xbfff82a0) at lo/core/vcl/source/window/winproc.cxx:2484
9  0x056f33a6 in SalFrame::CallCallback (this=0xa08e050, nEvent=8, pEvent=0xbfff82a0) at salframe.hxx:243
10 0x05727a93 in AquaSalFrame::SendPaintEvent (this=0xa08e050, pRect=0x0) at lo/core/vcl/aqua/source/window/salframe.cxx:423
11 0x057678d3 in -[SalFrameWindow windowDidBecomeKey:] (self=0xa08e130, _cmd=0x9402b075, pNotification=0x179d5240) at lo/core/vcl/aqua/source/window/salframeview.mm:227
12 0x9b556df1 in __-[NSNotificationCenter addObserver:selector:name:object:]_block_invoke_1 ()
13 0x996ba903 in ___CFXNotificationPost_block_invoke_1 ()
14 0x99685688 in _CFXNotificationPost ()
15 0x9b541fde in -[NSNotificationCenter postNotificationName:object:userInfo:] ()
16 0x9b557272 in -[NSNotificationCenter postNotificationName:object:] ()
17 0x937deec5 in -[NSWindow becomeKeyWindow] ()
18 0x9374af4d in _NXSendWindowNotification ()
19 0x937de618 in _NXShowKeyAndMain ()
20 0x9374477d in -[NSApplication sendEvent:] ()
21 0x0575388d in -[VCL_NSApplication sendEvent:] (self=0xa02d120, _cmd=0x94126a08, pEvent=0x179c8430) at lo/core/vcl/aqua/source/app/vclnsapp.mm:208
22 0x056f081e in AquaSalInstance::Yield (this=0xa315ff0, bWait=true, bHandleAllCurrentEvents=false) at lo/core/vcl/aqua/source/app/salinst.cxx:695
23 0x050acee2 in ImplYield (i_bWait=true, i_bAllEvents=false) at lo/core/vcl/source/app/svapp.cxx:422
24 0x050a81be in Application::Yield (i_bAllEvents=false) at lo/core/vcl/source/app/svapp.cxx:456
25 0x050a817a in Application::Execute () at lo/core/vcl/source/app/svapp.cxx:401
26 0x00124a3a in desktop::Desktop::Main (this=0xbfff95e0) at lo/core/desktop/source/app/app.cxx:1736
27 0x050b8934 in ImplSVMain () at lo/core/vcl/source/app/svmain.cxx:162
28 0x056eff73 in AquaSalInstance::handleAppDefinedEvent (pEvent=0xa324b20) at lo/core/vcl/aqua/source/app/salinst.cxx:538
29 0x05752faf in -[VCL_NSApplication sendEvent:] (self=0xa02d120, _cmd=0x94126a08, pEvent=0xa324b20) at lo/core/vcl/aqua/source/app/vclnsapp.mm:60
30 0x936d6b21 in -[NSApplication run] ()
31 0x93967ac5 in NSApplicationMain ()
32 0x056eec96 in ImplSVMainHook (pnInit=0xbfff9580) at lo/core/vcl/aqua/source/app/salinst.cxx:231
33 0x050b9ea1 in SVMain () at lo/core/vcl/source/app/svmain.cxx:195
34 0x0018e01d in soffice_main () at lo/core/desktop/source/app/sofficemain.cxx:82
35 0x00001f5b in sal_main () at lo/core/desktop/source/app/main.c:48
36 0x00001f40 in main (argc=5, argv=0xbfff966c) at lo/core/desktop/source/app/main.c:47

Whatever the root problem behind 8ed93fef13
"We need to acquire the yield mutex here," please fix it properly instead.

Change-Id: I281da60de1471f702ca34fd2b3239b6da83e2cf9
2013-04-19 01:39:42 +02:00
..
alpha.cxx
animate.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
base14.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
bitmap.cxx
bitmap2.cxx
bitmap3.cxx
bitmap4.cxx
bitmapex.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
bmpacc.cxx
bmpacc2.cxx
bmpacc3.cxx
bmpconv.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
bmpfast.cxx
configsettings.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
cvtgrf.cxx
cvtsvm.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
embeddedfontshelper.cxx
extoutdevdata.cxx
font.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
gdimtf.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
gfxlink.cxx Resolves: #i119965# Fixed saving slides where temporary files... 2013-04-12 18:47:23 +01:00
gradient.cxx
graph.cxx
graphictools.cxx
hatch.cxx
image.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
imagerepository.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
impanmvw.cxx
impanmvw.hxx
impbmp.cxx
impgraph.cxx Resolves: #i119735# missing css.svg.SVGWriter when using GraphicProvider 2013-04-14 21:33:59 +01:00
impimage.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
impimagetree.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
impvect.cxx
impvect.hxx
jobset.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
lineinfo.cxx
mapmod.cxx
metaact.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
metric.cxx
octree.cxx
oldprintadaptor.cxx
outdev.cxx
outdev2.cxx
outdev3.cxx Translate German comments and general clean-up 2013-04-10 08:46:37 +00:00
outdev4.cxx
outdev5.cxx
outdev6.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
outdevnative.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
outmap.cxx
pdfextoutdevdata.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
pdffontcache.cxx
pdffontcache.hxx
pdfwriter.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
pdfwriter_impl.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
pdfwriter_impl.hxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
pdfwriter_impl2.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
pngread.cxx
pngwrite.cxx
print.cxx Translate German comments and general clean-up 2013-04-10 08:46:37 +00:00
print2.cxx
print3.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
regband.cxx
region.cxx Resolves: #i120096# Detect empty polygon in Region constructor... 2013-04-14 23:57:43 +01:00
salgdilayout.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
sallayout.cxx Actually no need to have it inline in the header 2013-04-06 13:23:21 +03:00
salmisc.cxx
salnativewidgets-none.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
svgdata.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
textlayout.cxx mass removal of rtl:: prefixes for O(U)String* 2013-04-07 14:23:11 +02:00
virdev.cxx Do not arbitrarily lock a mutex 2013-04-19 01:39:42 +02:00
wall.cxx