1 Commits

Author SHA1 Message Date
7ec09bee1e feat: fix 7zip integration 2025-10-13 11:29:30 +11:00
2 changed files with 14 additions and 11 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "@drop-oss/droplet", "name": "@drop-oss/droplet",
"version": "3.1.0", "version": "3.2.0",
"main": "index.js", "main": "index.js",
"types": "index.d.ts", "types": "index.d.ts",
"napi": { "napi": {

View File

@ -168,18 +168,21 @@ impl VersionBackend for ZipVersionBackend {
let files = raw_result.split("\n").filter(|v| v.len() > 0).map(|v| v.split(" ").filter(|v| v.len() > 0)); let files = raw_result.split("\n").filter(|v| v.len() > 0).map(|v| v.split(" ").filter(|v| v.len() > 0));
let mut results = Vec::new(); let mut results = Vec::new();
for mut file in files { for file in files {
let (date, time, attrs, size, compress, name) = ( let mut values = file.collect::<Vec<&str>>();
file.next().unwrap(), values.reverse();
file.next().unwrap(), let mut iter = values.iter();
file.next().unwrap(), let (name, compress, size, attrs) = (
file.next().unwrap(), iter.next().expect("failed to fetch name"),
file.next().unwrap(), iter.next().expect("failed to read compressed size"),
file.next().unwrap(), iter.next().expect("failed to read file size"),
iter.next().expect("failed to fetch attrs")
); );
println!("got line: {} {} {} {} {} {}", date, time, attrs, size, compress, name); if attrs.starts_with("D") {
continue;
}
results.push(VersionFile { results.push(VersionFile {
relative_filename: name.to_owned(), relative_filename: name.to_owned().to_owned(),
permission: 0, permission: 0,
size: size.parse().unwrap(), size: size.parse().unwrap(),
}); });