ServerApp no longer kills ServerWindows when they don't respond, but drops into
the debugger - killing them only very rarely works out anyway. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15516 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -162,26 +162,11 @@ ServerApp::~ServerApp()
|
|||||||
if (MessageLooper::WaitForQuit(deathSemaphore, 3000000) != B_OK) {
|
if (MessageLooper::WaitForQuit(deathSemaphore, 3000000) != B_OK) {
|
||||||
// This really shouldn't happen, as it shows we're buggy
|
// This really shouldn't happen, as it shows we're buggy
|
||||||
#if __HAIKU__
|
#if __HAIKU__
|
||||||
syslog(LOG_ERR, "ServerApp %s needs to kill some server windows!\n",
|
syslog(LOG_ERR, "ServerApp %s: ServerWindow doesn't respond!\n",
|
||||||
Signature());
|
Signature());
|
||||||
#else
|
#else
|
||||||
printf("ServerApp %s needs to kill some server windows!\n",
|
debugger("ServerWindow doesn't respond!\n");
|
||||||
Signature());
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// there still seem to be some windows left - kill them!
|
|
||||||
fWindowListLock.Lock();
|
|
||||||
|
|
||||||
for (int32 i = 0; i < fWindowList.CountItems(); i++) {
|
|
||||||
ServerWindow* window = fWindowList.ItemAt(i);
|
|
||||||
printf("kill window \"%s\"\n", window->Title());
|
|
||||||
|
|
||||||
kill_thread(window->Thread());
|
|
||||||
window->Hide();
|
|
||||||
delete window;
|
|
||||||
}
|
|
||||||
|
|
||||||
fWindowListLock.Unlock();
|
|
||||||
}
|
}
|
||||||
fWindowListLock.Lock();
|
fWindowListLock.Lock();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user