about summary refs log tree commit diff
path: root/library/std/src/sys_common/fs.rs
diff options
context:
space:
mode:
authorIvan Tham <pickfire@riseup.net>2021-03-27 01:21:35 +0800
committerIvan Tham <pickfire@riseup.net>2021-03-27 21:23:48 +0800
commit6c6ef7317bf87321c5eaefb1322380c8f297ff1b (patch)
tree4f2ebcb1f9bbe90429aa9b09974ddf96c3c530bf /library/std/src/sys_common/fs.rs
parentb8719c51e0e44483cff9b6975a830f6e51812a48 (diff)
downloadrust-6c6ef7317bf87321c5eaefb1322380c8f297ff1b.tar.gz
rust-6c6ef7317bf87321c5eaefb1322380c8f297ff1b.zip
Improve fs error open_from unix
Consistency for #79399
Suggested by JohnTitor

Improve fs error invaild input for sys_common

The text was duplicated from unix.
Diffstat (limited to 'library/std/src/sys_common/fs.rs')
-rw-r--r--library/std/src/sys_common/fs.rs10
1 files changed, 6 insertions, 4 deletions
diff --git a/library/std/src/sys_common/fs.rs b/library/std/src/sys_common/fs.rs
index 92d0cc60850..30908824dd6 100644
--- a/library/std/src/sys_common/fs.rs
+++ b/library/std/src/sys_common/fs.rs
@@ -4,15 +4,17 @@ use crate::fs;
 use crate::io::{self, Error, ErrorKind};
 use crate::path::Path;
 
+pub(crate) const NOT_FILE_ERROR: Error = Error::new_const(
+    ErrorKind::InvalidInput,
+    &"the source path is neither a regular file nor a symlink to a regular file",
+);
+
 pub fn copy(from: &Path, to: &Path) -> io::Result<u64> {
     let mut reader = fs::File::open(from)?;
     let metadata = reader.metadata()?;
 
     if !metadata.is_file() {
-        return Err(Error::new_const(
-            ErrorKind::InvalidInput,
-            &"the source path is not an existing regular file",
-        ));
+        return Err(NOT_FILE_ERROR);
     }
 
     let mut writer = fs::File::create(to)?;