diff options
| author | geniusgogo <[email protected]> | 2023-12-06 19:03:28 +0800 |
|---|---|---|
| committer | Meco Man <[email protected]> | 2023-12-06 20:19:20 +0800 |
| commit | 073761fdbef686a09fdcd8157695b5f3bcfe9587 (patch) | |
| tree | a3f5f0a189de79de0ffe91ee7ba3aa3c2fbbad93 | |
| parent | 4bd5c31dacbfa2fb68b04cbda290c08563fbf870 (diff) | |
fix #8305, symlink bug.
| -rw-r--r-- | components/dfs/dfs_v2/src/dfs_file.c | 9 |
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; } |
