aboutsummaryrefslogtreecommitdiffstats
path: root/init
diff options
context:
space:
mode:
authorMike Lockwood <lockwood@android.com>2009-05-08 11:36:11 -0700
committerThe Android Open Source Project <initial-contribution@android.com>2009-05-08 11:36:11 -0700
commit6e1683f5a770a18d58a5dbfa2347b7ad2b01a3da (patch)
treea11fb1216a52950fbf2080c9ed4dd7bd79cdf00b /init
parent46f208e40d226b881736036088317c918cc5d5e7 (diff)
parentb3779558dcfbe99f0b9c1ef796e3728edad25672 (diff)
downloadsystem_core-6e1683f5a770a18d58a5dbfa2347b7ad2b01a3da.tar.gz
system_core-6e1683f5a770a18d58a5dbfa2347b7ad2b01a3da.tar.bz2
system_core-6e1683f5a770a18d58a5dbfa2347b7ad2b01a3da.zip
am b377955: init: Fix some broken code that did not cause problems until
Merge commit 'b3779558dcfbe99f0b9c1ef796e3728edad25672' * commit 'b3779558dcfbe99f0b9c1ef796e3728edad25672': init: Fix some broken code that did not cause problems until switching to gcc 4.4
Diffstat (limited to 'init')
-rw-r--r--init/parser.c4
-rw-r--r--init/property_service.c7
2 files changed, 5 insertions, 6 deletions
diff --git a/init/parser.c b/init/parser.c
index 6a22d242..30fa3de6 100644
--- a/init/parser.c
+++ b/init/parser.c
@@ -536,7 +536,7 @@ void queue_all_property_triggers()
const char* name = act->name + strlen("property:");
const char* equals = strchr(name, '=');
if (equals) {
- char* prop_name[PROP_NAME_MAX + 1];
+ char prop_name[PROP_NAME_MAX + 1];
const char* value;
int length = equals - name;
if (length > PROP_NAME_MAX) {
@@ -546,7 +546,7 @@ void queue_all_property_triggers()
prop_name[length] = 0;
/* does the property exist, and match the trigger value? */
- value = property_get((const char *)&prop_name[0]);
+ value = property_get(prop_name);
if (value && !strcmp(equals + 1, value)) {
action_add_queue_tail(act);
}
diff --git a/init/property_service.c b/init/property_service.c
index 0bc62392..48ca3ea3 100644
--- a/init/property_service.c
+++ b/init/property_service.c
@@ -296,7 +296,7 @@ int property_set(const char *name, const char *value)
__futex_wake(&pa->serial, INT32_MAX);
}
/* If name starts with "net." treat as a DNS property. */
- if (strncmp("net.", name, sizeof("net.") - 1) == 0) {
+ if (strncmp("net.", name, strlen("net.")) == 0) {
if (strcmp("net.change", name) == 0) {
return 0;
}
@@ -307,7 +307,7 @@ int property_set(const char *name, const char *value)
*/
property_set("net.change", name);
} else if (persistent_properties_loaded &&
- strncmp("persist.", name, sizeof("persist.") - 1) == 0) {
+ strncmp("persist.", name, strlen("persist.")) == 0) {
/*
* Don't write properties to disk until after we have read all default properties
* to prevent them from being overwritten by default values.
@@ -446,8 +446,7 @@ static void load_persistent_properties()
if (dir) {
while ((entry = readdir(dir)) != NULL) {
- if (!strcmp(entry->d_name, ".") || !strcmp(entry->d_name, "..") ||
- strncmp("persist.", entry->d_name, sizeof("persist.") - 1))
+ if (strncmp("persist.", entry->d_name, strlen("persist.")))
continue;
#if HAVE_DIRENT_D_TYPE
if (entry->d_type != DT_REG)