[1/2] bus/platform: fix resource names iteration
Checks
Commit Message
Fix stop condition and make sure we have some
sentinel at the end of buffer to make sure
loop can properly terminate.
Coverity issue: 383661
Fixes: 17c839f74da3 ("bus: add platform bus")
Signed-off-by: Tomasz Duszynski <tduszynski@marvell.com>
---
drivers/bus/platform/platform.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
@@ -249,11 +249,11 @@ of_resource_name(const char *dev_name, int index)
char *name;
snprintf(path, sizeof(path), PLATFORM_BUS_DEVICES_PATH "/%s/of_node/reg-names", dev_name);
- ret = read_sysfs_string(path, buf, sizeof(buf));
+ ret = read_sysfs_string(path, buf, sizeof(buf) - 1);
if (ret)
return NULL;
- for (name = buf; name; name += strlen(name) + 1) {
+ for (name = buf; *name != 0; name += strlen(name) + 1) {
if (num++ != index)
continue;
return strdup(name);