From 2dae355ecb8879c494b3ba19f506a581ced13b28 Mon Sep 17 00:00:00 2001 From: Clemens Zeidler Date: Mon, 1 Aug 2011 00:56:23 +0000 Subject: [PATCH] Fix window stack api and Desktop::WindowForClientLooperPort lock assert. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42526 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/interface/WindowStack.cpp | 3 ++- src/servers/app/Desktop.cpp | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/kits/interface/WindowStack.cpp b/src/kits/interface/WindowStack.cpp index 688a97f291..34db295976 100644 --- a/src/kits/interface/WindowStack.cpp +++ b/src/kits/interface/WindowStack.cpp @@ -163,7 +163,7 @@ BWindowStack::HasWindow(const BMessenger& window) int32 code = B_ERROR; fLink->FlushWithReply(code); if (code != B_OK) - return code; + return false; bool hasWindow; if (fLink->Read(&hasWindow) != B_OK) @@ -205,5 +205,6 @@ BWindowStack::_StartMessage(int32 what) { fLink->StartMessage(AS_TALK_TO_DESKTOP_LISTENER); fLink->Attach(kMagicSATIdentifier); + fLink->Attach(kStacking); return fLink->Attach(what); } diff --git a/src/servers/app/Desktop.cpp b/src/servers/app/Desktop.cpp index 2fc0a6349a..7baf5bc41d 100644 --- a/src/servers/app/Desktop.cpp +++ b/src/servers/app/Desktop.cpp @@ -2643,7 +2643,7 @@ Desktop::AllWindows() Window* Desktop::WindowForClientLooperPort(port_id port) { - ASSERT(fWindowLock.IsReadLocked()); + ASSERT_MULTI_LOCKED(fWindowLock); for (Window* window = fAllWindows.FirstWindow(); window != NULL; window = window->NextWindow(kAllWindowList)) {