On Wed, 2013-12-04 at 00:02 +0100, Michael Stahl wrote: > > Well - we could special-case the SolarMutex on Windows - making it not > > a CriticalSection but a true Windows 'mutex' that we can include in a > > 'WaitForMultipleObjects' - along with the rest of the things the > > mainloop wants. Or we could associate a condition with it that can be > > signalled to wake the mainloop to ask for some event processing now and > > then - instead of just waiting on the lock/CriticalSection. > > you mean some way to get the main loop to process outstanding Win32 > messages while it fails to acquire SolarMutex? ... sounds crazy ... but > what could possibly go wrong with that :)
Lol ;-) well - not quite that crazy; but at least processing / these messages that are basically pushing things into the main thread that have to be done there: particularly VCL / GDI / 'yield' requests. Of course, an alternative might be to have a "GUI thread" that does nothing but run a main-loop, never executing any code - such that we can always safely yield, and/or create/destroy windows/GCs etc. Ho hum ;-) the whole SolarMutex thing needs a ground-up re-design, but it is quite a chunky research task I think: intersecting with everything in the app from the bottom up. Regards, Michael. -- michael.me...@collabora.com <><, Pseudo Engineer, itinerant idiot _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice