summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgeniusgogo <[email protected]>2023-12-06 19:03:28 +0800
committerMeco Man <[email protected]>2023-12-06 20:19:20 +0800
commit073761fdbef686a09fdcd8157695b5f3bcfe9587 (patch)
treea3f5f0a189de79de0ffe91ee7ba3aa3c2fbbad93
parent4bd5c31dacbfa2fb68b04cbda290c08563fbf870 (diff)
fix #8305, symlink bug.
-rw-r--r--components/dfs/dfs_v2/src/dfs_file.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/components/dfs/dfs_v2/src/dfs_file.c b/components/dfs/dfs_v2/src/dfs_file.c
index 4bb933a32d..9b9ff47ca3 100644
--- a/components/dfs/dfs_v2/src/dfs_file.c
+++ b/components/dfs/dfs_v2/src/dfs_file.c
@@ -250,6 +250,13 @@ char *dfs_nolink_path(struct dfs_mnt **mnt, char *fullpath, int mode)
rt_memcpy(path + index, fp, i);
path[index + i] = '\0';
+
+ /* the last should by mode process. */
+ if ((fp[i] == '\0') && (!mode))
+ {
+ break;
+ }
+
fp += i;
dentry = dfs_dentry_lookup(*mnt, path, 0);
@@ -307,8 +314,6 @@ _ERR_RET:
path = RT_NULL;
}
- //rt_kprintf("%s: %s => %s\n", __FUNCTION__, fullpath, path);
-
return path;
}