ntdll: Fix Directory Searching when VFAT_IOCTL_READDIR_BOTH returns an invalid d_reclen

Robert Shearman rob at codeweavers.com
Wed Mar 8 07:19:34 CST 2006


Alexandre Julliard wrote:

>Robert Shearman <rob at codeweavers.com> writes:
>
>  
>
>>--- a/dlls/ntdll/directory.c
>>+++ b/dlls/ntdll/directory.c
>>@@ -1245,7 +1245,11 @@ static NTSTATUS find_file_in_dir( char *
>>                 unix_name[pos - 1] = '/';
>>                 for (;;)
>>                 {
>>-                    if (!de[0].d_reclen) break;
>>+                    if (!de[0].d_reclen)
>>+                    {
>>+                        unix_name[pos - 1] = 0;
>>+                        break;
>>    
>>
>
>We should probably have a 'goto not_found' here instead.
>

No, the file it is searching for exists, but doesn't seem to be returned 
by the ioctl for some reason. It is likely a x86-64 kernel bug, but we 
should still fix in our code IMHO.

-- 
Rob Shearman




More information about the wine-devel mailing list