Add check for length of child's name as well to avoid
path expanding into a different node than expected.
A path "/host1x/vic" can get us to non-existent node /host1x-pd/vic
if /host1x-pd/ comes before /host1x/
Bug
200105664
Change-Id: I1a32608a669e44249557e25b6575e5f95ac687cd
Signed-off-by: Sri Krishna chowdary <schowdary@nvidia.com>
Reviewed-on: http://git-master/r/770290
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: Sumit Singh <sumsingh@nvidia.com>
Reviewed-by: Sachin Nikam <snikam@nvidia.com>
p = strchr(path, '/');
for_each_child(tree, child) {
- if (p && strneq(path, child->name, p-path))
+ if (p &&
+ (strlen(child->name) == (p - path)) &&
+ strneq(path, child->name, p-path))
return get_node_by_path(child, p+1);
else if (!p && streq(path, child->name))
return child;