diff --git a/src/item/mod.rs b/src/item/mod.rs index 1031729..9715ca2 100644 --- a/src/item/mod.rs +++ b/src/item/mod.rs @@ -26,11 +26,10 @@ impl Item { for c in res { write!(sha256sum, "{c:02x}")?; } - let node = Node::read_data_to_tar(&data, &filename, &meta, owner)?; let mode = meta.mode(); Ok(Self { entry: Entry::File { path, sha256sum, mode, size }, - node, + node: Node::read_data_to_tar(&data, &filename, &meta, owner)?, }) } else if meta.is_dir() { let mode = meta.mode(); diff --git a/tar/src/header.rs b/tar/src/header.rs index 2479ca0..e56475d 100644 --- a/tar/src/header.rs +++ b/tar/src/header.rs @@ -272,7 +272,7 @@ impl Header { header.mtime[..mtime.len()].copy_from_slice(mtime.as_bytes()); header.link_indicator[0] = FileType::from(meta) as u8; if header.link_indicator[0] == FileType::Symlink as u8 { - let link = fs::read_link(&filename)?.to_str().unwrap().to_string(); + let link = fs::read_link(filename)?.to_str().unwrap().to_string(); header.link_name[..link.len()].copy_from_slice(link.as_bytes()); } else if header.link_indicator[0] == FileType::Block as u8 { let major = format!("{:07o}", meta.st_dev());