mirror of
https://github.com/denoland/deno.git
synced 2025-03-03 09:31:22 -05:00
fix(std/wasi): use lookupflags for path_filestat_get (#6530)
This commit is contained in:
parent
40dcfc8996
commit
5f3d730df0
2 changed files with 27 additions and 1 deletions
|
@ -853,7 +853,10 @@ export default class Module {
|
|||
const view = new DataView(this.memory.buffer);
|
||||
|
||||
try {
|
||||
const info = Deno.statSync(path);
|
||||
const info =
|
||||
(flags & LOOKUPFLAGS_SYMLINK_FOLLOW) != 0
|
||||
? Deno.statSync(path)
|
||||
: Deno.lstatSync(path);
|
||||
|
||||
view.setBigUint64(buf_out, BigInt(info.dev ? info.dev : 0), true);
|
||||
buf_out += 8;
|
||||
|
|
23
std/wasi/testdata/std_fs_symlink_metadata.rs
vendored
Normal file
23
std/wasi/testdata/std_fs_symlink_metadata.rs
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
// { "preopens": { "/fixture": "fixture" } }
|
||||
|
||||
fn main() {
|
||||
let metadata = std::fs::symlink_metadata("/fixture/directory").unwrap();
|
||||
assert!(metadata.file_type().is_dir());
|
||||
|
||||
let metadata =
|
||||
std::fs::symlink_metadata("/fixture/symlink_to_directory").unwrap();
|
||||
assert!(metadata.file_type().is_symlink());
|
||||
|
||||
let metadata = std::fs::symlink_metadata("/fixture/file").unwrap();
|
||||
assert!(metadata.file_type().is_file());
|
||||
|
||||
let metadata = std::fs::symlink_metadata("/fixture/symlink_to_file").unwrap();
|
||||
assert!(metadata.file_type().is_symlink());
|
||||
|
||||
let metadata = std::fs::symlink_metadata("/fixture/directory/file").unwrap();
|
||||
assert!(metadata.file_type().is_file());
|
||||
|
||||
let metadata =
|
||||
std::fs::symlink_metadata("/fixture/directory/symlink_to_file").unwrap();
|
||||
assert!(metadata.file_type().is_symlink());
|
||||
}
|
Loading…
Add table
Reference in a new issue