1a139434
by Yuxuan Shui at 2025-07-27T21:27:49+09:00
server: Fix use-after-free in screen_buffer_destroy.
When an async object enters the async queue, its fd is released (to avoid
a reference cycle I assume?). In screen_buffer_destroy, the screen_buffer's
fd is released first, this cause it to be freed even when it could still be
referenced by an async object in the queue. This means free_async_queue
could use freed memory.