Author: post
Date: 2010-11-26 13:17:10 +0100 (Fri, 26 Nov 2010)
New Revision: 3638
Modified:
trunk/plugins/denoise/denoise.c
Log:
Fix heap overflow, when copying image data on subframed image.
Modified: trunk/plugins/denoise/denoise.c
===================================================================
--- trunk/plugins/denoise/denoise.c 2010-11-25 20:49:22 UTC (rev 3637)
+++ trunk/plugins/denoise/denoise.c 2010-11-26 12:17:10 UTC (rev 3638)
@@ -268,10 +268,11 @@
/* Align so we start at even pixel counts */
roi->width += (roi->x&1);
roi->x -= (roi->x&1);
+ roi->width = MIN(input->w - roi->x, roi->width);
output = rs_image16_copy(input, FALSE);
tmp = rs_image16_new_subframe(output, roi);
bit_blt((char*)GET_PIXEL(tmp,0,0), tmp->rowstride * 2,
- (const char*)GET_PIXEL(input,roi->x,roi->y),
input->rowstride * 2, tmp->rowstride * 2, tmp->h);
+ (const char*)GET_PIXEL(input,roi->x,roi->y),
input->rowstride * 2, tmp->w * tmp->pixelsize * 2, tmp->h);
}
else
{
_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit