Implement killing the debugged team on quitting a TeamDebugger, the obviuos
way... thanks Ingo! Seems to work just fine. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31204 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -36,7 +36,8 @@ TeamDebugger::TeamDebugger()
|
|||||||
fWorker(NULL),
|
fWorker(NULL),
|
||||||
fDebugEventListener(-1),
|
fDebugEventListener(-1),
|
||||||
fTeamWindow(NULL),
|
fTeamWindow(NULL),
|
||||||
fTerminating(false)
|
fTerminating(false),
|
||||||
|
fKillTeamOnQuit(false)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -55,6 +56,9 @@ TeamDebugger::~TeamDebugger()
|
|||||||
if (fDebugEventListener >= 0)
|
if (fDebugEventListener >= 0)
|
||||||
wait_for_thread(fDebugEventListener, NULL);
|
wait_for_thread(fDebugEventListener, NULL);
|
||||||
|
|
||||||
|
if (fKillTeamOnQuit && fTeam != NULL)
|
||||||
|
kill_team(fTeam->ID());
|
||||||
|
|
||||||
delete fDebuggerInterface;
|
delete fDebuggerInterface;
|
||||||
delete fWorker;
|
delete fWorker;
|
||||||
delete fDebugModel;
|
delete fDebugModel;
|
||||||
@@ -345,11 +349,7 @@ TeamDebugger::TeamWindowQuitRequested(TeamWindow* window)
|
|||||||
|
|
||||||
switch (alert->Go()) {
|
switch (alert->Go()) {
|
||||||
case 0:
|
case 0:
|
||||||
// TODO: Implement killing the team.
|
fKillTeamOnQuit = true;
|
||||||
alert = new BAlert("TODO", "That is not nice and I won't do it "
|
|
||||||
"either! Test failed. Nice to know how you think about these "
|
|
||||||
"matters.", "Ugh!");
|
|
||||||
alert->Go();
|
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -124,6 +124,7 @@ private:
|
|||||||
thread_id fDebugEventListener;
|
thread_id fDebugEventListener;
|
||||||
TeamWindow* fTeamWindow;
|
TeamWindow* fTeamWindow;
|
||||||
volatile bool fTerminating;
|
volatile bool fTerminating;
|
||||||
|
bool fKillTeamOnQuit;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // TEAM_DEBUGGER_H
|
#endif // TEAM_DEBUGGER_H
|
||||||
|
|||||||
Reference in New Issue
Block a user