Module: wine Branch: master Commit: 00bd0518cab0f7808d6bef5d1cc27f0fddd82d98 URL: https://source.winehq.org/git/wine.git/?a=commit;h=00bd0518cab0f7808d6bef5d1...
Author: Alexandre Julliard julliard@winehq.org Date: Wed Apr 21 20:54:00 2021 +0200
kernelbase: Fix buffer size passed to read_nt_symlink().
Spotted by David Torok.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/kernelbase/volume.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/kernelbase/volume.c b/dlls/kernelbase/volume.c index 594c1b8e138..d513dda1f9d 100644 --- a/dlls/kernelbase/volume.c +++ b/dlls/kernelbase/volume.c @@ -308,7 +308,7 @@ BOOL WINAPI GetVolumeNameForVolumeMountPointW( LPCWSTR path, LPWSTR volume, DWOR /* Take the mount point and get the "nonpersistent name" */ /* We will then take that and get the volume name */ nonpersist_name = (WCHAR *)(input + 1); - status = read_nt_symlink( symlink_name, nonpersist_name, i_size - sizeof(*input) ); + status = read_nt_symlink( symlink_name, nonpersist_name, (i_size - sizeof(*input)) / sizeof(WCHAR) ); TRACE("read_nt_symlink got stat=%x, for %s, got <%s>\n", status, debugstr_w(symlink_name), debugstr_w(nonpersist_name)); if (status != STATUS_SUCCESS)