aboutsummaryrefslogtreecommitdiff
path: root/applets
diff options
context:
space:
mode:
authorRon Yorston <rmy@pobox.com>2024-03-09 06:24:42 +0000
committerRon Yorston <rmy@pobox.com>2024-03-09 06:24:42 +0000
commit912d65cba97db3d27a747decb1c1635aece8bb90 (patch)
tree3654619ff5de80e74199a721ee0e12cefe802742 /applets
parentc6e443f10f4467bf2892e86defdec13c25a51cff (diff)
downloadbusybox-w32-912d65cba97db3d27a747decb1c1635aece8bb90.tar.gz
busybox-w32-912d65cba97db3d27a747decb1c1635aece8bb90.tar.bz2
busybox-w32-912d65cba97db3d27a747decb1c1635aece8bb90.zip
win32: improvements to realpath(3)
The previous commit unnecessarily duplicated the path returned from resolve_symlinks(), resulting in a memory leak. Thanks to avih for spotting this. Even if we can't canonicalise the path in resolve_symlinks() we can at least return the result of resolving the trailing symlink. Moreover, this can be done both when the necessary API is missing and when the filesystem doesn't support it. Not perfect, but better than nothing, and there's no cost. This change gets rid of a handful of realpath-related test failures on ReactOS and Windows XP. Some background: Commit 8ebe81483 returned the raw path when the required API was missing. This was reverted in commit f902184fa because it caused an infinite loop (GitHub issue #204). Commit 31467ddfc fixed the cause of the loop, which is why it's now safe to reintroduce a fallback return. (GitHub commit #389)
Diffstat (limited to 'applets')
0 files changed, 0 insertions, 0 deletions