[ 
https://issues.apache.org/jira/browse/IMAGING-162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14322019#comment-14322019
 ] 

Michael Groß edited comment on IMAGING-162 at 2/15/15 6:11 PM:
---------------------------------------------------------------

[~mgolub] Thank you for the comprehensive information and for the example 
bitmap! Especially examples from the wild are very helpful because I can write 
tests using them. 

I created http://github.com/mgmechanics/commons-imaging/tree/IMAGING-162 to 
propose a patch which fixes this issue. First I am adding a test which 
reproduces the problem. Next I will fix it by throwing an exception if a bitmap 
with negative height is provided and leave a TODO comment on place. Then I will 
try to read such files without error and change the test accordingly.

Edit: In my patch Image Info is read correct even if height is negative but if 
you try to read such an bmp you'll got an ImageReadException which tells:
"Reading image data from bitmaps with negative header is yet not supported."


was (Author: mgmechanics):
[~mgolub] Thank you for the comprehensive information and for the example 
bitmap! Especially examples from the wild are very helpful because I can write 
tests using them. 

I created http://github.com/mgmechanics/commons-imaging/tree/IMAGING-162 to 
propose a patch which fixes this issue. First I am adding a test which 
reproduces the problem. Next I will fix it by throwing an exception if a bitmap 
with negative height is provided and leave a TODO comment on place. Then I will 
try to read such files without error and change the test accordingly.

> BMP files with negative bitmap height are not supported
> -------------------------------------------------------
>
>                 Key: IMAGING-162
>                 URL: https://issues.apache.org/jira/browse/IMAGING-162
>             Project: Commons Imaging
>          Issue Type: Bug
>          Components: Format: BMP
>    Affects Versions: 1.0
>            Reporter: Myroslav Golub
>             Fix For: Patch Needed
>
>         Attachments: monochrome-negative-height.bmp
>
>
> The BMP format allows for negative values of the height field in the header. 
> This means that the image lines are stored top-down, not bottom-up as usual 
> (i. e. the first pixel in the pixel array would be in the top left corner of 
> the image, not in the bottom left as usual). However, when a negative-height 
> bitmap is passed, the BmpImageParser attempts to create an array of negative 
> length, and a NegativeArraySizeException ensues.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to