projects
/
litoprism.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
7f15d92
)
Return error on too much data
author
MegaBrutal
<code+git@megabrutal.com>
Sat, 25 Jun 2022 23:30:00 +0000
(
01:30
+0200)
committer
MegaBrutal
<code+git@megabrutal.com>
Sat, 25 Jun 2022 23:30:00 +0000
(
01:30
+0200)
src/main.rs
patch
|
blob
|
history
diff --git
a/src/main.rs
b/src/main.rs
index f46e88f270a02db8b774841e53ab7657540bffcf..c9c48b8338d13255985ec58eaba7af688ffb1f96 100644
(file)
--- a/
src/main.rs
+++ b/
src/main.rs
@@
-11,6
+11,7
@@
use actix_web::http::StatusCode;
use image::{ImageBuffer, ColorType, Rgb, RgbImage, write_buffer_with_format};
use image::ImageOutputFormat::Png;
use image::imageops::{FilterType, resize};
use image::{ImageBuffer, ColorType, Rgb, RgbImage, write_buffer_with_format};
use image::ImageOutputFormat::Png;
use image::imageops::{FilterType, resize};
+use image::error::{LimitError, LimitErrorKind};
#[derive(Debug)]
#[derive(Debug)]
@@
-28,7
+29,7
@@
impl ResponseError for ImageError {
}
fn error_response(&self) -> HttpResponse<BoxBody> {
}
fn error_response(&self) -> HttpResponse<BoxBody> {
- HttpResponse::InternalServerError().
finish(
)
+ HttpResponse::InternalServerError().
body(format!("{}\n", &self)
)
}
}
}
}
@@
-74,7
+75,7
@@
fn make_png(dim_x: u32, dim_y: u32, scale: u32, data: &mut dyn Iterator<Item = u
let mut pixels = img.pixels_mut();
for sp in ToRgbIter::new(data) {
let mut pixels = img.pixels_mut();
for sp in ToRgbIter::new(data) {
- let mut dp = pixels.next().
unwrap()
;
+ let mut dp = pixels.next().
ok_or(ImageError(image::ImageError::Limits(LimitError::from_kind(LimitErrorKind::DimensionError))))?
;
println!("{:?}", sp);
dp.0 = sp.0;
}
println!("{:?}", sp);
dp.0 = sp.0;
}