diff --git a/init/init.cpp b/init/init.cpp index ee5add898..0615cf22d 100644 --- a/init/init.cpp +++ b/init/init.cpp @@ -800,7 +800,12 @@ int main(int argc, char** argv) { parser.AddSectionParser("service",std::make_unique()); parser.AddSectionParser("on", std::make_unique()); parser.AddSectionParser("import", std::make_unique()); - parser.ParseConfig("/init.rc"); + std::string bootscript = property_get("ro.boot.init_rc"); + if (bootscript.empty()) { + parser.ParseConfig("/init.rc"); + } else { + parser.ParseConfig(bootscript); + } ActionManager& am = ActionManager::GetInstance();