vbox6: prevent deadlock in framebuffer implementation

QuerySourceBitmap() may end up in a block for VM response, while the VM
becomes blocked on the critsect in framebuffer.

Fixes #5477
This commit is contained in:
Christian Helmuth 2025-03-26 16:24:15 +01:00 committed by Norman Feske
parent 1df55bd2dc
commit 4aa33bce33

View File

@ -138,11 +138,12 @@ class Genodefb :
{
HRESULT result = E_FAIL;
Lock();
/* save the new bitmap reference */
_display->QuerySourceBitmap(screen, _display_bitmap.asOutParam());
Lock();
bool const ok = (w <= (ULONG)_gui_win.area.w) &&
(h <= (ULONG)_gui_win.area.h);