* fixed #1889, .DS_Store is no longer treated as key file * ethstore filters directories, hidden files and common system files * fixed compiling
This commit is contained in:
parent
a427208f79
commit
464516d01d
@ -22,6 +22,8 @@ use ethkey::Address;
|
|||||||
use {json, SafeAccount, Error};
|
use {json, SafeAccount, Error};
|
||||||
use super::KeyDirectory;
|
use super::KeyDirectory;
|
||||||
|
|
||||||
|
const IGNORED_FILES: &'static [&'static str] = &["thumbs.db"];
|
||||||
|
|
||||||
#[cfg(not(windows))]
|
#[cfg(not(windows))]
|
||||||
fn restrict_permissions_to_owner(file_path: &Path) -> Result<(), i32> {
|
fn restrict_permissions_to_owner(file_path: &Path) -> Result<(), i32> {
|
||||||
use std::ffi;
|
use std::ffi;
|
||||||
@ -62,7 +64,14 @@ impl DiskDirectory {
|
|||||||
.flat_map(Result::ok)
|
.flat_map(Result::ok)
|
||||||
.filter(|entry| {
|
.filter(|entry| {
|
||||||
let metadata = entry.metadata();
|
let metadata = entry.metadata();
|
||||||
metadata.is_ok() && !metadata.unwrap().is_dir()
|
let file_name = entry.file_name();
|
||||||
|
let name = file_name.to_str().unwrap();
|
||||||
|
// filter directories
|
||||||
|
metadata.is_ok() && !metadata.unwrap().is_dir() &&
|
||||||
|
// hidden files
|
||||||
|
!name.starts_with(".") &&
|
||||||
|
// other ignored files
|
||||||
|
!IGNORED_FILES.contains(&name)
|
||||||
})
|
})
|
||||||
.map(|entry| entry.path())
|
.map(|entry| entry.path())
|
||||||
.collect::<Vec<PathBuf>>();
|
.collect::<Vec<PathBuf>>();
|
||||||
|
Loading…
Reference in New Issue
Block a user