mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-10 05:02:54 +00:00
GEventLoop: Don't call process_unprocessed_messages() from itself.
This could be tail-call-optimized but it's not, so we end up overflowing the stack space if we recurse too many times. This was causing crashes when resizing Minesweeper.
This commit is contained in:
parent
c91b0d6b5f
commit
5dee5c325e
Notes:
sideshowbarker
2024-07-19 14:33:39 +09:00
Author: https://github.com/awesomekling
Commit: 5dee5c325e
2 changed files with 2 additions and 4 deletions
|
@ -316,9 +316,6 @@ void GEventLoop::process_unprocessed_bundles()
|
|||
if (coalesced_resizes)
|
||||
dbgprintf("Coalesced %d resizes\n", coalesced_resizes);
|
||||
#endif
|
||||
|
||||
if (!m_unprocessed_bundles.is_empty())
|
||||
process_unprocessed_bundles();
|
||||
}
|
||||
|
||||
bool GEventLoop::drain_messages_from_server()
|
||||
|
|
|
@ -43,6 +43,7 @@ private:
|
|||
|
||||
virtual void do_processing() override
|
||||
{
|
||||
while (!m_unprocessed_bundles.is_empty())
|
||||
process_unprocessed_bundles();
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue