<html>
    <head>
      <base href="https://bugs.documentfoundation.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_UNCONFIRMED "
   title="UNCONFIRMED - deadlock from lock dialog: Singleton vs. SolarMutex in framework"
   href="https://bugs.documentfoundation.org/show_bug.cgi?id=114025">114025</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>deadlock from lock dialog: Singleton vs. SolarMutex in framework
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>LibreOffice
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>5.4.2.2 release
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>UNCONFIRMED
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>LibreOffice
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>libreoffice-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>michael.meeks@collabora.com
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I append an annotated stack trace that describes the issue.

Lets discuss the more general issue somewhere linked from here (if there is
one) - I'd like to get this closed =)

(gdb) thread apply all backtrace

---Type <return> to continue, or q <return> to quit---
Thread 2 (Thread 0x7fc1dd47b700 (LWP 970)):
#0  0x00007fc1ffa0242d in __lll_lock_wait () from /lib64/libpthread.so.0
#1  0x00007fc1ff9fdde6 in _L_lock_870 () from /lib64/libpthread.so.0
#2  0x00007fc1ff9fdcdf in pthread_mutex_lock () from /lib64/libpthread.so.0
#3  0x00007fc201036680 in osl_acquireMutex (pMutex=<optimized out>)
    at /opt/collaboraoffice5.3/debugsource/sal/osl/unx/mutex.cxx:99
#4  0x00007fc2043a578d in SalYieldMutex::acquire() ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#5  0x00007fc202b62e71 in framework::HandlerCache::HandlerCache() ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#6  0x00007fc202b9ecfb in
framework::DispatchProvider::DispatchProvider(com::sun::star::uno:---Type
<return> to continue, or q <return> to quit---
:Reference<com::sun::star::uno::XComponentContext> const&,
com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) () from
/opt/collaboraoffice5.3/program/libmergedlo.so
#7  0x00007fc202c345dc in framework::Desktop::constructorInit() ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#8  0x00007fc202c3635b in
com_sun_star_comp_framework_Desktop_get_implementation ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so

extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
com_sun_star_comp_framework_Desktop_get_implementation(
    css::uno::XComponentContext *context,
    css::uno::Sequence<css::uno::Any> const &)
{
    return cppu::acquire(Singleton::get(context).instance.get());
}

#9  0x00007fc1fb04cc0f in
cppuhelper::ServiceManager::Data::Implementation::createInstance
    (this=0x2539e80, context=...,
singletonRequest=singletonRequest@entry=false)
    at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:693
#10 0x00007fc1fb050512 in cppuhelper::ServiceManager::createInstanceWithContext
(
    this=<optimized out>, aServiceSpecifier=..., Context=...)
---Type <return> to continue, or q <return> to quit---
    at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:1050

#11 0x00007fc1e7bd03cb in x11::SelectionManager::run(void*) ()
   from /opt/collaboraoffice5.3/program/libvclplug_genlo.so
#12 0x00007fc20103cc87 in osl_thread_start_Impl (pData=0x33fb5d0)
    at /opt/collaboraoffice5.3/debugsource/sal/osl/unx/thread.cxx:240
#13 0x00007fc1ff9fbe25 in start_thread () from /lib64/libpthread.so.0
#14 0x00007fc200d3234d in clone () from /lib64/libc.so.6

...

Thread 1 (Thread 0x7fc2062dca40 (LWP 961)):
#0  0x00007fc200d2c7f9 in syscall () from /lib64/libc.so.6
#1  0x00007fc1f965eeab in __cxa_guard_acquire () from /lib64/libstdc++.so.6
---Type <return> to continue, or q <return> to quit---
#2  0x00007fc202c3631c in
com_sun_star_comp_framework_Desktop_get_implementation ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so

framework/source/services/desktop.cxx:

extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
com_sun_star_comp_framework_Desktop_get_implementation(
    css::uno::XComponentContext *context,
    css::uno::Sequence<css::uno::Any> const &)
{
    return cppu::acquire(Singleton::get(context).instance.get());
}

#3  0x00007fc1fb04cc0f in
cppuhelper::ServiceManager::Data::Implementation::createInstance
    (this=0x2539e80, context=...,
singletonRequest=singletonRequest@entry=false)
    at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:693
#4  0x00007fc1fb050512 in cppuhelper::ServiceManager::createInstanceWithContext
(
    this=<optimized out>, aServiceSpecifier=..., Context=...)
    at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:1050
#5  0x00007fc202fd1359 in SfxApplication::Initialize_Impl() ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#6  0x00007fc202fc8d24 in SfxApplication::GetOrCreate() ()
---Type <return> to continue, or q <return> to quit---
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#7  0x00007fc203254232 in
com_sun_star_comp_sfx2_GlobalEventBroadcaster_get_implementation
    () from /opt/collaboraoffice5.3/program/libmergedlo.so
#8  0x00007fc1fb04cc0f in
cppuhelper::ServiceManager::Data::Implementation::createInstance
    (this=0x2560c40, context=..., singletonRequest=singletonRequest@entry=true)
    at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:693
#9  0x00007fc1fb04dc21 in (anonymous
namespace)::SingletonFactory::createInstanceWithContext (this=0x7fc2061da268,
Context=...)
    at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:535
#10 0x00007fc1faff63ed in cppu::ComponentContext::lookupMap (
    this=this@entry=0x7fc2061d5848, rName=...)
---Type <return> to continue, or q <return> to quit---
    at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/component_context.cxx:330
#11 0x00007fc1faff8090 in cppu::ComponentContext::getValueByName
(this=0x7fc2061d5848,
    rName=...)
    at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/component_context.cxx:409
#12 0x00007fc204050ee9 in Dialog::Execute() ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so


+ must be this guy:

    + Holding the SolarMutex at this point.

    css::uno::Reference< css::uno::XComponentContext > xContext(
            comphelper::getProcessComponentContext() );
    css::uno::Reference<css::frame::XGlobalEventBroadcaster>
xEventBroadcaster(css::frame::theGlobalEventBroadcaster::get(xContext),
css::uno::UNO_QUERY_THROW);
    css::document::DocumentEvent aObject;
    aObject.EventName = "DialogExecute";
    xEventBroadcaster->documentEventOccured(aObject);

#13 0x00007fc204071c2a in MessageDialog::Execute() ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so


#14 0x00007fc203313ddf in desktop::Lockfile_execWarning(desktop::Lockfile*) ()

desktop/source/app/lockfile2.cxx
        + bool Lockfile_execWarning( Lockfile const * that )
   from /opt/collaboraoffice5.3/program/libmergedlo.so

#15 0x00007fc2028d91f9 in desktop::Lockfile::check(bool
(*)(desktop::Lockfile*)) ()
---Type <return> to continue, or q <return> to quit---
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#16 0x00007fc2032fcfb1 in desktop::Desktop::Main() ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#17 0x00007fc2042f6626 in ImplSVMain() ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#18 0x00007fc2042f6712 in SVMain() () from
/opt/collaboraoffice5.3/program/libmergedlo.so
#19 0x00007fc20331e37a in soffice_main ()
   from /opt/collaboraoffice5.3/program/libmergedlo.so
#20 0x000000000040075b in sal_main ()
    at /opt/collaboraoffice5.3/debugsource/desktop/source/app/main.c:48
#21 main (argc=<optimized out>, argv=<optimized out>)
---Type <return> to continue, or q <return> to quit---
    at /opt/collaboraoffice5.3/debugsource/desktop/source/app/main.c:47
(gdb)</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>