diff --git a/src/pxar/encoder.rs b/src/pxar/encoder.rs index 1b607eae..e4db5fc5 100644 --- a/src/pxar/encoder.rs +++ b/src/pxar/encoder.rs @@ -676,6 +676,8 @@ impl <'a, W: Write> Encoder<'a, W> { let mut goodbye_items = vec![]; for (filename, stat, exclude_list) in name_list { + let start_pos = self.writer_pos; + if filename.as_bytes() == b".pxarexclude" { if let Some((ref content, ref stat)) = pxar_exclude { let filefd = match nix::fcntl::openat(rawfd, filename.as_ref(), OFlag::O_NOFOLLOW, Mode::empty()) { @@ -706,8 +708,6 @@ impl <'a, W: Write> Encoder<'a, W> { if self.verbose { println!("{:?}", self.full_path()); } - let start_pos = self.writer_pos; - if is_directory(&stat) { let mut dir = match nix::dir::Dir::openat(rawfd, filename.as_ref(), OFlag::O_DIRECTORY|OFlag::O_NOFOLLOW, Mode::empty()) {