Skip to content

Commit d2134ee

Browse files
authored
Merge pull request #9234 from jackyalbo/jacky-nc-5.20-fixes
[5.20 backport] NC | don't stat directories in list_object
2 parents c92d7e7 + 1ee8de1 commit d2134ee

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

src/sdk/namespace_fs.js

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -737,16 +737,18 @@ class NamespaceFS {
737737
if (!delimiter && r.common_prefix) {
738738
await process_dir(r.key);
739739
} else {
740-
const entry_path = path.join(this.bucket_path, r.key);
741-
// If entry is outside of bucket, returns stat of symbolic link
742-
const use_lstat = !(await this._is_path_in_bucket_boundaries(fs_context, entry_path));
743-
const stat = await native_fs_utils.stat_if_exists(fs_context, entry_path,
744-
use_lstat, config.NSFS_LIST_IGNORE_ENTRY_ON_EACCES);
745-
// TODO - GAP of .folder files - we return stat of the directory for the
746-
// xattr, but the creation time should be of the .folder files (and maybe more )
747-
if (stat) {
748-
r.stat = stat;
749-
// add the result only if we have the stat information
740+
if (!r.common_prefix) {
741+
const entry_path = path.join(this.bucket_path, r.key);
742+
// If entry is outside of bucket, returns stat of symbolic link
743+
const use_lstat = !(await this._is_path_in_bucket_boundaries(fs_context, entry_path));
744+
const stat = await native_fs_utils.stat_if_exists(fs_context, entry_path,
745+
use_lstat, config.NSFS_LIST_IGNORE_ENTRY_ON_EACCES);
746+
// TODO - GAP of .folder files - we return stat of the directory for the
747+
// xattr, but the creation time should be of the .folder files (and maybe more )
748+
if (stat) r.stat = stat;
749+
}
750+
// add the result only if we have the stat information or a directory
751+
if (r.stat || r.common_prefix) {
750752
if (pos < results.length) {
751753
results.splice(pos, 0, r);
752754
} else {

0 commit comments

Comments
 (0)