From 5ce64c2a4e53e4088246498b7a4e34690304ca1a Mon Sep 17 00:00:00 2001 From: Ashley Ruglys Date: Mon, 22 Feb 2021 17:19:36 +0100 Subject: [PATCH] Include depth in linear_size calculation --- src/header.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/header.rs b/src/header.rs index 1a3a200..f57d2f9 100644 --- a/src/header.rs +++ b/src/header.rs @@ -138,10 +138,12 @@ impl Header { None => return Err(Error::UnsupportedFormat), }; + let depth = depth.unwrap_or(1); + if compressed { header.flags = header.flags | HeaderFlags::LINEARSIZE; header.linear_size = Some( - pitch * height / format.get_pitch_height() + pitch * height * depth / format.get_pitch_height() ); } else { header.flags = header.flags | HeaderFlags::PITCH; @@ -192,10 +194,12 @@ impl Header { None => return Err(Error::UnsupportedFormat), }; + let depth = depth.unwrap_or(1); + if compressed { header.flags = header.flags | HeaderFlags::LINEARSIZE; header.linear_size = Some( - pitch * height / format.get_pitch_height() + pitch * height * depth / format.get_pitch_height() ); } else { header.flags = header.flags | HeaderFlags::PITCH;