[Libreoffice-bugs] [Bug 103571] macOS 100% CPU usage when minimizing screen if multiple documents are opened
bugzilla-daemon at bugs.documentfoundation.org
bugzilla-daemon at bugs.documentfoundation.org
Fri Feb 23 10:00:32 UTC 2018
https://bugs.documentfoundation.org/show_bug.cgi?id=103571
--- Comment #47 from Michael Meeks <michael.meeks at collabora.com> ---
One thing that is ~obviously wrong is this:
frame #38: 0x00000001150cbd8a
libvcllo.dylib`SalTimer::CallCallback(this=0x000060000001b630, idle=true) + 58
at saltimer.hxx:55
...
libvcllo.dylib`AquaSalInstance::AnyInput(this=0x00006080000b9aa0,
nType=KEYBOARD) + 603 at salinst.cxx:786
frame #52: 0x0000000114f58ef6
libvcllo.dylib`Application::AnyInput(nType=KEYBOARD) + 38 at svapp.cxx:631
The windows impl of AnyInput doesn't look like it processes timers or events -
it is a real 'Peek' method - not expected to re-enter in a weird way:
vcl/win/app/salinst.cxx (WinSalInstance::AnyInput)
packed with this sort of thing:
if ( PeekMessageW( &aMsg, nullptr, 0, 0, PM_NOREMOVE | PM_NOYIELD ) )
vs.
vcl/osx/salinst.cxx (AquaSalInstance::AnyInput)
which does:
NSEvent* pEvent = [NSApp nextEventMatchingMask: nEventMask untilDate: nil
inMode: NSDefaultRunLoopMode dequeue: NO];
Which looks like a go-wild "run the loop" crazy thing ;-) which may be a wider
systemic problem highlighted here (?)
Are we adding timers to the wrong mode for that loop ? or do we need a custom
mode so we can exclude ~everything from running and just peek ? or perhaps a
different method call ?
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20180223/a98a5672/attachment.html>
More information about the Libreoffice-bugs
mailing list