Skip to content

Commit 6e5881b

Browse files
committed
Fix postalization
1 parent baf780f commit 6e5881b

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

src/filters/wasm/lib.rs

+7-3
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,12 @@ pub fn posterize(pointer: *mut u8, bytesize: usize) {
2727
let green = sl[idx + 1] as f32;
2828
let blue = sl[idx + 2] as f32;
2929

30-
sl[idx] = (((red / range).floor() + 0.5) * range) as u8;
31-
sl[idx + 1] = (((green / range).floor() + 0.5) * range) as u8;
32-
sl[idx + 2] = (((blue / range).floor() + 0.5) * range) as u8;
30+
let rStep = (red / range).floor();
31+
let gStep = (green / range).floor();
32+
let bStep = (blue / range).floor();
33+
34+
sl[idx] = ((rStep + 0.5) * range).min(255.0).max(0.0) as u8;
35+
sl[idx + 1] = ((gStep + 0.5) * range).min(255.0).max(0.0) as u8;
36+
sl[idx + 2] = ((bStep + 0.5) * range).min(255.0).max(0.0) as u8;
3337
}
3438
}

0 commit comments

Comments
 (0)