mirror of
https://github.com/servo/servo.git
synced 2025-08-06 06:00:15 +01:00
Auto merge of #15929 - n0max:canvas_drawimage_crop_fix, r=nox
Fix crop_area_bytes_length calculation and add tests <!-- Please describe your changes on the following line: --> - Fix crop_area_bytes_length calculation (the height was multiplied by itself) - Add tests for this error and for the case that the width is multiplied by itself --- <!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: --> - [X] `./mach build -d` does not report any errors - [X] `./mach test-tidy` does not report any errors - [X] These changes fix #15386 <!-- Either: --> - [X] There are tests for these changes <!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. --> <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/15929) <!-- Reviewable:end -->
This commit is contained in:
commit
594a679002
8 changed files with 185 additions and 1 deletions
|
@ -746,7 +746,7 @@ fn crop_image(image_data: Vec<u8>,
|
|||
// (consecutive elements in a pixel row of the image are contiguous in memory)
|
||||
let stride = image_size.width * 4;
|
||||
let image_bytes_length = image_size.height * image_size.width * 4;
|
||||
let crop_area_bytes_length = crop_rect.size.height * crop_rect.size.height * 4;
|
||||
let crop_area_bytes_length = crop_rect.size.height * crop_rect.size.width * 4;
|
||||
// If the image size is less or equal than the crop area we do nothing
|
||||
if image_bytes_length <= crop_area_bytes_length {
|
||||
return image_data;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue