eric pouech (@epo) commented about dlls/ntdll/unix/file.c:
+ USHORT length_b = (b ? b->Length : 0); + if (length_a != length_b) return FALSE; + + if (length_a == 0 && length_b == 0) return TRUE; + return (!memcmp(a->Buffer, b->Buffer, a->Length)); +} + + /*********************************************************************** * get_cached_dir_data * * Retrieve the cached directory data, or initialize it if necessary. */ static unsigned int get_cached_dir_data( HANDLE handle, struct dir_data **data_ret, int fd, - const UNICODE_STRING *mask ) + const UNICODE_STRING *mask, BOOLEAN restart_scan, you should be able to write the changes without adding the fresh_handle parameter:
* insert the NO_SUCH_FILE =\> NO_MORE_FILES fixup after calling init_cache_data_dir (in the case the cache entry already exists) * you'll have to tweak the calling code to always set io-\>Status = status (this will in turn show a failing test in other directory tests, but native Win10 here has the same behavior, so this test must be adapted first) -- https://gitlab.winehq.org/wine/wine/-/merge_requests/6904#note_92923