Recursive use of non-recursive std::mtuex in Scheduler::ProcessTaskScheduling?

Luboš Luňák l.lunak at
Wed Feb 10 16:55:20 UTC 2021

On Tuesday 09 of February 2021, Luboš Luňák wrote:
> On Tuesday 09 of February 2021, Jan-Marek Glogowski wrote:
> > That is the new code from
> >
> > I think we have to revert that. I don't see a way to prevent AnyInput /
> > PeekMessage to process messages. There is GetQueueStatus, but I guess
> > that's not possible to be used correctly with our complicated user
> > WM_USER based setup.
>  I think GetQueueStatus() should be sufficient for this specific case. I'll
> try to do that change and see if it helps.

 Actually the way I see it GetQueueStatus() should be sufficient for the 
generic use in AnyInput() and in fact _the_ Win32 function to use. I'm basing 
this on the assumption that AnyInput() is supposed to do what its 
documentation says it's meant to do, namely check if there are events pending 
(and thus not process anything). Now I realize it may be somewhat naive to 
make such assumptions when it comes to old OOo code, but I've tested with all the relevant 
bugreports in the file's history[*] and I could see no problem. Does somebody 
see a possible problem with this solution?

History also mentions #108919#, but that's Sun-internal, and that change was 
later reverted.

 Luboš Luňák
 l.lunak at

More information about the LibreOffice mailing list