Loading init/property_service.c +14 −7 Original line number Diff line number Diff line Loading @@ -403,10 +403,13 @@ void get_property_workspace(int *fd, int *sz) *sz = pa_workspace.size; } static void load_properties(char *data) static void load_properties(char *data, char *prefix) { char *key, *value, *eol, *sol, *tmp; size_t plen; if (prefix) plen = strlen(prefix); sol = data; while((eol = strchr(sol, '\n'))) { key = sol; Loading @@ -422,6 +425,9 @@ static void load_properties(char *data) tmp = value - 2; while((tmp > key) && isspace(*tmp)) *tmp-- = 0; if (prefix && strncmp(key, prefix, plen)) continue; while(isspace(*value)) value++; tmp = eol - 2; while((tmp > value) && isspace(*tmp)) *tmp-- = 0; Loading @@ -430,7 +436,7 @@ static void load_properties(char *data) } } static void load_properties_from_file(const char *fn) static void load_properties_from_file(const char *fn, char *prefix) { char *data; unsigned sz; Loading @@ -438,7 +444,7 @@ static void load_properties_from_file(const char *fn) data = read_file(fn, &sz); if(data != 0) { load_properties(data); load_properties(data, prefix); free(data); } } Loading Loading @@ -511,7 +517,7 @@ void property_init(void) void property_load_boot_defaults(void) { load_properties_from_file(PROP_PATH_RAMDISK_DEFAULT); load_properties_from_file(PROP_PATH_RAMDISK_DEFAULT, NULL); } int properties_inited(void) Loading @@ -526,7 +532,7 @@ static void load_override_properties() { ret = property_get("ro.debuggable", debuggable); if (ret && (strcmp(debuggable, "1") == 0)) { load_properties_from_file(PROP_PATH_LOCAL_OVERRIDE); load_properties_from_file(PROP_PATH_LOCAL_OVERRIDE, NULL); } #endif /* ALLOW_LOCAL_PROP_OVERRIDE */ } Loading @@ -548,8 +554,9 @@ void start_property_service(void) { int fd; load_properties_from_file(PROP_PATH_SYSTEM_BUILD); load_properties_from_file(PROP_PATH_SYSTEM_DEFAULT); load_properties_from_file(PROP_PATH_SYSTEM_BUILD, NULL); load_properties_from_file(PROP_PATH_SYSTEM_DEFAULT, NULL); load_properties_from_file(PROP_PATH_FACTORY, "ro."); load_override_properties(); /* Read persistent properties after all default values have been loaded. */ load_persistent_properties(); Loading Loading
init/property_service.c +14 −7 Original line number Diff line number Diff line Loading @@ -403,10 +403,13 @@ void get_property_workspace(int *fd, int *sz) *sz = pa_workspace.size; } static void load_properties(char *data) static void load_properties(char *data, char *prefix) { char *key, *value, *eol, *sol, *tmp; size_t plen; if (prefix) plen = strlen(prefix); sol = data; while((eol = strchr(sol, '\n'))) { key = sol; Loading @@ -422,6 +425,9 @@ static void load_properties(char *data) tmp = value - 2; while((tmp > key) && isspace(*tmp)) *tmp-- = 0; if (prefix && strncmp(key, prefix, plen)) continue; while(isspace(*value)) value++; tmp = eol - 2; while((tmp > value) && isspace(*tmp)) *tmp-- = 0; Loading @@ -430,7 +436,7 @@ static void load_properties(char *data) } } static void load_properties_from_file(const char *fn) static void load_properties_from_file(const char *fn, char *prefix) { char *data; unsigned sz; Loading @@ -438,7 +444,7 @@ static void load_properties_from_file(const char *fn) data = read_file(fn, &sz); if(data != 0) { load_properties(data); load_properties(data, prefix); free(data); } } Loading Loading @@ -511,7 +517,7 @@ void property_init(void) void property_load_boot_defaults(void) { load_properties_from_file(PROP_PATH_RAMDISK_DEFAULT); load_properties_from_file(PROP_PATH_RAMDISK_DEFAULT, NULL); } int properties_inited(void) Loading @@ -526,7 +532,7 @@ static void load_override_properties() { ret = property_get("ro.debuggable", debuggable); if (ret && (strcmp(debuggable, "1") == 0)) { load_properties_from_file(PROP_PATH_LOCAL_OVERRIDE); load_properties_from_file(PROP_PATH_LOCAL_OVERRIDE, NULL); } #endif /* ALLOW_LOCAL_PROP_OVERRIDE */ } Loading @@ -548,8 +554,9 @@ void start_property_service(void) { int fd; load_properties_from_file(PROP_PATH_SYSTEM_BUILD); load_properties_from_file(PROP_PATH_SYSTEM_DEFAULT); load_properties_from_file(PROP_PATH_SYSTEM_BUILD, NULL); load_properties_from_file(PROP_PATH_SYSTEM_DEFAULT, NULL); load_properties_from_file(PROP_PATH_FACTORY, "ro."); load_override_properties(); /* Read persistent properties after all default values have been loaded. */ load_persistent_properties(); Loading