now only system addons are loaded when safemode is true
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8720 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -22,9 +22,9 @@
|
|||||||
#include "InputServer.h"
|
#include "InputServer.h"
|
||||||
|
|
||||||
|
|
||||||
AddOnManager::AddOnManager()
|
AddOnManager::AddOnManager(bool safeMode)
|
||||||
:
|
: fLock("add-on manager"),
|
||||||
fLock("add-on manager")
|
fSafeMode(safeMode)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -266,8 +266,11 @@ AddOnManager::RegisterAddOns()
|
|||||||
node_ref nref;
|
node_ref nref;
|
||||||
BDirectory directory;
|
BDirectory directory;
|
||||||
BPath path;
|
BPath path;
|
||||||
for (uint i = 0 ; i < sizeof(directories) / sizeof(directory_which) ; i++)
|
uint i = 0;
|
||||||
for (uint j = 0 ; j < sizeof(subDirectories) / sizeof(char[24]) ; j++) {
|
if (fSafeMode) // when safemode, only B_BEOS_ADDONS_DIRECTORY is used
|
||||||
|
i = 2;
|
||||||
|
for (i = 0 ; i < sizeof(directories) / sizeof(directory_which) ; i++)
|
||||||
|
for (uint32 j = 0 ; j < sizeof(subDirectories) / sizeof(char[24]) ; j++) {
|
||||||
if ((find_directory(directories[i], &path) == B_OK)
|
if ((find_directory(directories[i], &path) == B_OK)
|
||||||
&& (path.Append(subDirectories[j]) == B_OK)
|
&& (path.Append(subDirectories[j]) == B_OK)
|
||||||
&& (directory.SetTo(path.Path()) == B_OK)
|
&& (directory.SetTo(path.Path()) == B_OK)
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
|
|
||||||
class AddOnManager {
|
class AddOnManager {
|
||||||
public:
|
public:
|
||||||
AddOnManager();
|
AddOnManager(bool safeMode);
|
||||||
~AddOnManager();
|
~AddOnManager();
|
||||||
|
|
||||||
void LoadState();
|
void LoadState();
|
||||||
@@ -60,6 +60,8 @@ class AddOnManager {
|
|||||||
|
|
||||||
AddOnMonitorHandler *fHandler;
|
AddOnMonitorHandler *fHandler;
|
||||||
AddOnMonitor *fAddOnMonitor;
|
AddOnMonitor *fAddOnMonitor;
|
||||||
|
|
||||||
|
bool fSafeMode;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // _ADD_ON_MANAGER_H
|
#endif // _ADD_ON_MANAGER_H
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ InputServer::InputServer(void) : BApplication(INPUTSERVER_SIGNATURE),
|
|||||||
|
|
||||||
InitKeyboardMouseStates();
|
InitKeyboardMouseStates();
|
||||||
|
|
||||||
fAddOnManager = new AddOnManager();
|
fAddOnManager = new AddOnManager(SafeMode());
|
||||||
fAddOnManager->LoadState();
|
fAddOnManager->LoadState();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user