From a577cf141f3473a3704278b7c40d1219a3221721 Mon Sep 17 00:00:00 2001 From: Adi Oanca Date: Sat, 29 Oct 2005 10:35:09 +0000 Subject: [PATCH] Immediately close app_server window after pressing close button in R5 git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14564 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/servers/app/RootLayer.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/servers/app/RootLayer.cpp b/src/servers/app/RootLayer.cpp index 1264089e4d..43625087c3 100644 --- a/src/servers/app/RootLayer.cpp +++ b/src/servers/app/RootLayer.cpp @@ -159,15 +159,20 @@ RootLayer::~RootLayer() { fQuiting = true; -// BMessage quitMsg(B_QUIT_REQUESTED); + BMessage quitMsg(B_QUIT_REQUESTED); + ssize_t length = quitMsg.FlattenedSize(); + char buffer[length]; + if (quitMsg.Flatten(buffer,length) < B_OK) { + // failed to flatten? + kill_thread(fThreadID); + } + else{ + write_port(fListenPort, 0, buffer, length); -// BPrivate::PortLink msg(fListenPort, -1); -// msg.StartMessage(B_QUIT_REQUESTED); -// msg.EndMessage(); -// msg.Flush(); + status_t dummy; + wait_for_thread(fThreadID, &dummy); + } - status_t dummy; - wait_for_thread(fThreadID, &dummy); delete fDragMessage;