From 942862f287cad218c5b59e1ca57dcce8f382f7c2 Mon Sep 17 00:00:00 2001 From: Antoine du Hamel Date: Thu, 8 May 2025 11:25:20 +0200 Subject: [PATCH] fs: ensure `dir.read()` does not throw synchronously PR-URL: https://github.com/nodejs/node/pull/58228 Reviewed-By: LiviaMedeiros Reviewed-By: Chemi Atlow Reviewed-By: Colin Ihrig Reviewed-By: Luigi Pinca --- lib/internal/fs/dir.js | 2 +- test/parallel/test-fs-opendir.js | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/internal/fs/dir.js b/lib/internal/fs/dir.js index f227b51af03669..9964c385d4295c 100644 --- a/lib/internal/fs/dir.js +++ b/lib/internal/fs/dir.js @@ -94,7 +94,7 @@ class Dir { } read(callback) { - return this.#readImpl(true, callback); + return arguments.length === 0 ? this.#readPromisified() : this.#readImpl(true, callback); } #readImpl(maybeSync, callback) { diff --git a/test/parallel/test-fs-opendir.js b/test/parallel/test-fs-opendir.js index fda730097918be..625a0f75d02c10 100644 --- a/test/parallel/test-fs-opendir.js +++ b/test/parallel/test-fs-opendir.js @@ -160,7 +160,7 @@ async function doAsyncIterBreakTest() { break; } - await assert.rejects(async () => dir.read(), dirclosedError); + await assert.rejects(dir.read(), dirclosedError); } doAsyncIterBreakTest().then(common.mustCall()); @@ -172,7 +172,7 @@ async function doAsyncIterReturnTest() { } })(); - await assert.rejects(async () => dir.read(), dirclosedError); + await assert.rejects(dir.read(), dirclosedError); } doAsyncIterReturnTest().then(common.mustCall()); @@ -188,7 +188,7 @@ async function doAsyncIterThrowTest() { } } - await assert.rejects(async () => dir.read(), dirclosedError); + await assert.rejects(dir.read(), dirclosedError); } doAsyncIterThrowTest().then(common.mustCall());