diff options
Diffstat (limited to 'cmds')
-rw-r--r-- | cmds/bootanimation/bootanimation_main.cpp | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/cmds/bootanimation/bootanimation_main.cpp b/cmds/bootanimation/bootanimation_main.cpp index 675ea81..a8359c4 100644 --- a/cmds/bootanimation/bootanimation_main.cpp +++ b/cmds/bootanimation/bootanimation_main.cpp @@ -16,6 +16,8 @@ #define LOG_TAG "BootAnimation" +#include <cutils/properties.h> + #include <utils/IPCThreadState.h> #include <utils/ProcessState.h> #include <utils/IServiceManager.h> @@ -41,12 +43,20 @@ int main(int argc, char** argv) setpriority(PRIO_PROCESS, 0, ANDROID_PRIORITY_DISPLAY); #endif - sp<ProcessState> proc(ProcessState::self()); - ProcessState::self()->startThreadPool(); + char value[PROPERTY_VALUE_MAX]; + property_get("debug.sf.nobootanimation", value, "0"); + int noBootAnimation = atoi(value); + LOGI_IF(noBootAnimation, "boot animation disabled"); + if (!noBootAnimation) { + + sp<ProcessState> proc(ProcessState::self()); + ProcessState::self()->startThreadPool(); + + // create the boot animation object + sp<BootAnimation> boot = new BootAnimation(); - // create the boot animation object - sp<BootAnimation> boot = new BootAnimation(); + IPCThreadState::self()->joinThreadPool(); - IPCThreadState::self()->joinThreadPool(); + } return 0; } |