Applied idea from idefix (see bug #5938): try to launch screen_blanker by path when a launch by signature fails.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37305 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
89666eefae
commit
ab0e16df04
@ -365,6 +365,7 @@ ModulesView::MessageReceived(BMessage* message)
|
||||
}
|
||||
|
||||
case kMsgTestSaver:
|
||||
{
|
||||
SaveState();
|
||||
fSettings.Save();
|
||||
|
||||
@ -372,10 +373,25 @@ ModulesView::MessageReceived(BMessage* message)
|
||||
|
||||
be_roster->StartWatching(BMessenger(this, this->Looper()),
|
||||
B_REQUEST_QUIT);
|
||||
be_roster->Launch(SCREEN_BLANKER_SIG, &fSettings.Message(),
|
||||
&fScreenSaverTestTeamId);
|
||||
if (be_roster->Launch(SCREEN_BLANKER_SIG, &fSettings.Message(),
|
||||
&fScreenSaverTestTeamId) == B_OK)
|
||||
break;
|
||||
|
||||
// Try really hard to launch it. It's very likely that this fails,
|
||||
// when we run from the CD and there is only an incomplete mime
|
||||
// database for example...
|
||||
BPath path;
|
||||
if (find_directory(B_SYSTEM_BIN_DIRECTORY, &path) != B_OK
|
||||
|| path.Append("screen_blanker") != B_OK) {
|
||||
path.SetTo("/boot/system/bin/screen_blanker");
|
||||
}
|
||||
BEntry entry(path.Path());
|
||||
entry_ref ref;
|
||||
if (entry.GetRef(&ref) == B_OK)
|
||||
be_roster->Launch(&ref, &fSettings.Message(),
|
||||
&fScreenSaverTestTeamId);
|
||||
break;
|
||||
|
||||
}
|
||||
case kMsgAddSaver:
|
||||
fFilePanel->Show();
|
||||
break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user