diff --git a/src/kits/interface/Window.cpp b/src/kits/interface/Window.cpp index 917ceaa685..c52a32f3f4 100644 --- a/src/kits/interface/Window.cpp +++ b/src/kits/interface/Window.cpp @@ -1576,6 +1576,9 @@ BWindow::UpdateIfNeeded() if (((const BMessageQueue *)MessageQueue())->IsLocked()) return; + if (!Lock()) + return; + // make sure all requests that would cause an update have // arrived at the server Sync(); @@ -1606,6 +1609,7 @@ BWindow::UpdateIfNeeded() } queue->Unlock(); + Unlock(); }