Merge branch 'v1.x' into add-uv-sleep-example

This commit is contained in:
Kartik Puri 2025-12-02 21:34:34 +05:30 committed by GitHub
commit eee4d0baf8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1662,6 +1662,21 @@ void fs__readdir(uv_fs_t* req) {
dir = req->ptr; dir = req->ptr;
dirents = dir->dirents; dirents = dir->dirents;
memset(dirents, 0, dir->nentries * sizeof(*dir->dirents)); memset(dirents, 0, dir->nentries * sizeof(*dir->dirents));
/* Initial FindFirstFile can fail with ERROR_FILE_NOT_FOUND, meaning
* no matches, which leaves dir_handle set to INVALID_HANDLE_VALUE,
* see fs__opendir(). Not an actual error, just means no results.
*
* sshfs-win apparently works that way but reading an empty directory
* on a regular drive doesn't trigger that particular code path.
*
* See https://github.com/libuv/libuv/issues/4952
*/
if (dir->dir_handle == INVALID_HANDLE_VALUE) {
SET_REQ_RESULT(req, 0);
return;
}
find_data = &dir->find_data; find_data = &dir->find_data;
dirent_idx = 0; dirent_idx = 0;