| 446 | } |
| 447 | |
| 448 | fn binary_mtime(meta: &Metadata) -> Option<zip::DateTime> { |
| 449 | let Ok(modified) = meta.modified() else { |
| 450 | return None; |
| 451 | }; |
| 452 | |
| 453 | let dt: DateTime<Utc> = modified.into(); |
| 454 | if let Ok(dt) = zip::DateTime::try_from(dt.naive_utc()) { |
| 455 | return Some(dt); |
| 456 | } |
| 457 | |
| 458 | let Ok(created) = meta.created() else { |
| 459 | return None; |
| 460 | }; |
| 461 | |
| 462 | let dt: DateTime<Utc> = created.into(); |
| 463 | zip::DateTime::try_from(dt.naive_utc()).ok() |
| 464 | } |
| 465 | |
| 466 | #[cfg(unix)] |
| 467 | fn binary_permissions(meta: &Metadata) -> u32 { |