From: Ralf Habacker <ralf.habacker(a)freenet.de> --- dlls/ntdll/unix/file.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c index 5cabb6c37ff..ac11b85e886 100644 --- a/dlls/ntdll/unix/file.c +++ b/dlls/ntdll/unix/file.c @@ -3580,8 +3580,11 @@ static NTSTATUS lookup_unix_name( int root_fd, OBJECT_ATTRIBUTES *attr, UNICODE_ { int reparse_fd; - memcpy( reparse_name, name, (end - name) * sizeof(WCHAR) ); - reparse_name[end - name] = '?'; + size_t nlen = end - name; + WCHAR* reparse_name = malloc((nlen + 2) * sizeof(WCHAR)); // +1 for '?' +1 for '\0' + memcpy(reparse_name, name, nlen * sizeof(WCHAR)); + reparse_name[nlen] = '?'; + reparse_name[nlen + 1] = 0; // terminate if (!name_len && open_reparse) { -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/7650