init: fix copying boot properties
The previous patch "init: verify size of property buffers passed
to property_get" incorrectly modified one of the callers,
resulting in ro.serialno, ro.bootmode, ro.baseband, and
ro.bootloader always being set to their default values.
Bug: 9469860
(cherry picked from commit 67e3663fc93c65b69b5d121db05b0833b98d97f1)
Change-Id: Ia7b337e1fab6e334729f47ee1269e6c736615177
diff --git a/init/init.c b/init/init.c
index 1647078..afa4d44 100755
--- a/init/init.c
+++ b/init/init.c
@@ -640,7 +640,9 @@
for (i = 0; i < ARRAY_SIZE(prop_map); i++) {
ret = property_get(prop_map[i].src_prop, tmp);
- if (ret == 0)
+ if (ret > 0)
+ property_set(prop_map[i].dest_prop, tmp);
+ else
property_set(prop_map[i].dest_prop, prop_map[i].def_val);
}