[1/2] bus/platform: fix resource names iteration

Message ID 20230316094133.237641-1-tduszynski@marvell.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers
Series [1/2] bus/platform: fix resource names iteration |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Tomasz Duszynski March 16, 2023, 9:41 a.m. UTC
  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(-)
  

Patch

diff --git a/drivers/bus/platform/platform.c b/drivers/bus/platform/platform.c
index 536d9524c6..a2faacdf18 100644
--- a/drivers/bus/platform/platform.c
+++ b/drivers/bus/platform/platform.c
@@ -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);