forked from enlightenment/efl
evas: fix _evas_jpeg_membuf_src_skip bug
If file was corrupted , the size value of app frame is bigger than real file size. For example, if somebody change file using editor, the file start with (FF D8 FF E0 FF DB ..). But real file size can be small than (FF DB). In that case, _evas_jpeg_membuf_src_skip set src->pub.bytes_in_buffer to negative value, it make crash later. Signed-off-by: Jiyoun Park <jy0703.park@samsung.com> SVN revision: 61222
This commit is contained in:
parent
3b5050421b
commit
81098de5a6
|
@ -114,8 +114,18 @@ _evas_jpeg_membuf_src_skip(j_decompress_ptr cinfo,
|
|||
{
|
||||
struct jpeg_membuf_src *src = (struct jpeg_membuf_src *)cinfo->src;
|
||||
|
||||
src->pub.bytes_in_buffer -= num_bytes;
|
||||
src->pub.next_input_byte += num_bytes;
|
||||
long rec = 0;
|
||||
rec = src->pub.bytes_in_buffer - num_bytes;
|
||||
|
||||
if (rec <0)
|
||||
{
|
||||
(*(cinfo)->err->error_exit) ((j_common_ptr) (cinfo));
|
||||
}
|
||||
else
|
||||
{
|
||||
src->pub.bytes_in_buffer -= num_bytes;
|
||||
src->pub.next_input_byte += num_bytes;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Reference in New Issue