Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fs.rmSync returns wrong error code for not empty directory #57095

Open
koplas opened this issue Feb 16, 2025 · 0 comments · May be fixed by #57103
Open

fs.rmSync returns wrong error code for not empty directory #57095

koplas opened this issue Feb 16, 2025 · 0 comments · May be fixed by #57103

Comments

@koplas
Copy link

koplas commented Feb 16, 2025

Version

v23.7.0

Platform

Darwin redacted 24.3.0 Darwin Kernel Version 24.3.0: Thu Jan  2 20:22:58 PST 2025; root:xnu-11215.81.4~3/RELEASE_ARM64_T8132 arm64

Subsystem

No response

What steps will reproduce the bug?

Call fs.rmSync on a not empty directory.

How often does it reproduce? Is there a required condition?

The not empty directory error must occur.

What is the expected behavior? Why is that the expected behavior?

Get the result code of ENOTEMPTY.

What do you see instead?

Get the result code of EACCES.

Additional information

The relevant line that returns the wrong error code:

node/src/node_file.cc

Lines 1706 to 1708 in 69fdce2

} else if (error == std::errc::directory_not_empty) {
std::string message = "Directory not empty: " + file_path_str;
return env->ThrowErrnoException(EACCES, "rm", message.c_str(), path_c_str);

A list of constants and their error codes: https://en.cppreference.com/w/cpp/error/errc.

koplas added a commit to koplas/node that referenced this issue Feb 17, 2025
Return the correct error code, when a directory_not_empty error
occurred.

Fixes: nodejs#57095
koplas added a commit to koplas/node that referenced this issue Feb 17, 2025
Return the correct error code, when a directory_not_empty error
occurred.

Fixes: nodejs#57095
@koplas koplas linked a pull request Feb 17, 2025 that will close this issue
koplas added a commit to koplas/node that referenced this issue Feb 17, 2025
Return the correct error code, when a directory_not_empty error
occurred.

Fixes: nodejs#57095
koplas added a commit to koplas/node that referenced this issue Feb 17, 2025
Return the correct error code, when a directory_not_empty error
occurred.

Fixes: nodejs#57095
koplas added a commit to koplas/node that referenced this issue Feb 17, 2025
Return the correct error code, when a directory_not_empty error
occurred.

Fixes: nodejs#57095
koplas added a commit to koplas/node that referenced this issue Feb 18, 2025
Return the correct error code, when a directory_not_empty error
occurred.

Fixes: nodejs#57095
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant