To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=107260 Issue #|107260 Summary|vcl: crash when pasting during shutdown Component|gsl Version|DEV300m65 Platform|All URL| OS/Version|All Status|NEW Status whiteboard| Keywords| Resolution| Issue type|PATCH Priority|P3 Subcomponent|code Assigned to|pl Reported by|cmc
------- Additional comments from [email protected] Fri Nov 27 09:09:45 +0000 2009 ------- Start writer under valgrind (slows this down so its likely to happen), type some text, select it, ctrl + c, shutdown office, while its shutting down paste continuously like a crazy guy into a terminal. With a bit of luck you should get something like... ==24416== at 0x30CF80915A: pthread_mutex_lock (pthread_mutex_lock.c:84) ==24416== by 0x4C3791F: osl_acquireMutex (mutex.c:132) ==24416== by 0x11448E28: SalYieldMutex::acquire() (salinst.cxx:70) ==24416== by 0x6797EFF: TransferableHelper::getTransferDataFlavors() (in /usr/lib64/openoffice.org/basis3.2/program/libsvtlx.so) ==24416== by 0x113E2C4A: x11::SelectionManager::handleSelectionRequest(XSelectionRequestEvent&) (X11_selection.cxx:1643) ==24416== by 0x113E4284: x11::SelectionManager::handleXEvent(_XEvent&) (X11_selection.cxx:3603) ==24416== by 0x113E479A: x11::SelectionManager::dispatchEvent(int) (X11_selection.cxx:3679) ==24416== by 0x113E4835: x11::SelectionManager::run(void*) (X11_selection.cxx:3703) ==24416== by 0x4C3897B: osl_thread_start_Impl (thread.c:269) ==24416== by 0x30CF806AE9: start_thread (pthread_create.c:297) ==24416== by 0x30CECE233C: clone (clone.S:112) ==24416== Address 0xa501178 is 8 bytes inside a block of size 40 free'd ==24416== at 0x4A04D72: free (vg_replace_malloc.c:325) ==24416== by 0x9BF0EA6: vos::OMutex::~OMutex() (in /usr/lib64/openoffice.org/basis3.2/program/libvos3gcc3.so) ==24416== by 0x1112331F: GtkHookedYieldMutex::~GtkHookedYieldMutex() (salinst.h:46) ==24416== by 0x11448D32: X11SalInstance::~X11SalInstance() (salinst.cxx:144) ==24416== by 0x11122E2E: GtkInstance::~GtkInstance() (gtkinst.cxx:195) ==24416== by 0x7DD1745: DestroySalInstance(SalInstance*) (salplug.cxx:231) ==24416== by 0x7B6A39D: DeInitVCL() (svmain.cxx:537) it can happen inside any of the methods called from handleXEvent that reenter OOo and are blocked on the global SolarMutex, they stay stuck there until the global solarmutex is deleted and then the thread crashes and burns. When we get the downing event we call osl_terminateThread but the thread won't exit until its had a chance to finish its current cycle. Part of the fix can be to allow the thread to complete before finishing, that removes the problem of the thread existing past the destruction of the solarmutex which is a good thing. Doing that though shows that the downing event takes place after SfxApplication is destroyed and the pasting mechanism needs that too, so all in all it looks to me that the paste stuff needs to be shutdown before the death of SfxApplication. (I hate threads) --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
