Skip to content

Commit 2d75291

Browse files
Make compression level configurable
1 parent daad804 commit 2d75291

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/bundle.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -286,8 +286,8 @@ impl Level {
286286
Ok(Self { files })
287287
}
288288

289-
fn write<W: Write>(&self, writer: &mut W) -> Result<usize, Error> {
290-
let mut writer = Counter::new(LzmaWriter::new_compressor(writer, 6)?);
289+
fn write<W: Write>(&self, writer: &mut W, compression: u32) -> Result<usize, Error> {
290+
let mut writer = Counter::new(LzmaWriter::new_compressor(writer, compression)?);
291291
let header = self.gen_header();
292292
header.write(&mut writer)?;
293293

@@ -377,14 +377,14 @@ impl AssetBundle {
377377
Ok(Self { levels })
378378
}
379379

380-
fn write<W: Write>(&self, writer: &mut W) -> Result<(), Error> {
380+
fn write<W: Write>(&self, writer: &mut W, compression: u32) -> Result<(), Error> {
381381
let mut buf = Vec::new();
382382
let mut buf_writer = Counter::new(&mut buf);
383383
let mut uncompressed_bytes_written = 0;
384384

385385
let mut level_ends = Vec::new();
386386
for level in &self.levels {
387-
uncompressed_bytes_written += level.write(&mut buf_writer)?;
387+
uncompressed_bytes_written += level.write(&mut buf_writer, compression)?;
388388
let uncompressed_end = uncompressed_bytes_written as u32;
389389
let compressed_end = buf_writer.writer_bytes() as u32;
390390
level_ends.push(LevelEnds {
@@ -407,11 +407,11 @@ impl AssetBundle {
407407
.map_err(|e| format!("Couldn't read bundle: {}", e))
408408
}
409409

410-
pub fn to_file(&self, path: &str) -> Result<(), String> {
410+
pub fn to_file(&self, path: &str, compression_level: u32) -> Result<(), String> {
411411
let file =
412412
File::create(path).map_err(|e| format!("Couldn't create file {}: {}", path, e))?;
413413
let mut writer = BufWriter::new(file);
414-
self.write(&mut writer)
414+
self.write(&mut writer, compression_level)
415415
.map_err(|e| format!("Couldn't write bundle: {}", e))?;
416416
writer
417417
.flush()

0 commit comments

Comments
 (0)