diff --git a/src/servers/input/InputServer.cpp b/src/servers/input/InputServer.cpp index ddb09de957..f6dc551ff3 100644 --- a/src/servers/input/InputServer.cpp +++ b/src/servers/input/InputServer.cpp @@ -10,6 +10,8 @@ #include "kb_mouse_driver.h" #include "MethodReplicant.h" +#include + #include #include @@ -25,7 +27,6 @@ #include #include #include -#include #include @@ -163,6 +164,19 @@ InputServer::InputServer() fSafeMode = true; } +#ifdef HAIKU_TARGET_PLATFORM_HAIKU + if (_kern_get_safemode_option(B_SAFEMODE_DISABLE_USER_ADD_ONS, parameter, ¶meterLength) == B_OK) +#else + if (_kget_safemode_option_(B_SAFEMODE_DISABLE_USER_ADD_ONS, parameter, ¶meterLength) == B_OK) +#endif + { + if (!strcasecmp(parameter, "enabled") || !strcasecmp(parameter, "on") + || !strcasecmp(parameter, "true") || !strcasecmp(parameter, "yes") + || !strcasecmp(parameter, "enable") || !strcmp(parameter, "1")) + fSafeMode = true; + } + + gDeviceManager.LoadState(); #ifndef HAIKU_TARGET_PLATFORM_HAIKU diff --git a/src/servers/input/Jamfile b/src/servers/input/Jamfile index d1e929a46d..41d59499fa 100644 --- a/src/servers/input/Jamfile +++ b/src/servers/input/Jamfile @@ -30,7 +30,7 @@ SEARCH on US-International.keymap AddResources input_server : input_server.rdef ; -UsePrivateHeaders app input interface shared storage ; +UsePrivateHeaders app input interface kernel shared storage ; SubDirC++Flags -DADD_ON_STABLE_SECONDS=1 ; # for AddOnMonitorHandler.cpp