From dc4bbe906ba92ddc66f98a3c26ce19822bfb99ab Mon Sep 17 00:00:00 2001 From: heckflosse Date: Fri, 2 Sep 2016 21:04:23 +0200 Subject: [PATCH] Avoid possible buffer underrun in ImProcFunctions::Mad and ImProcFunctions::MadRgb --- rtengine/FTblockDN.cc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/rtengine/FTblockDN.cc b/rtengine/FTblockDN.cc index 288c9c994..69e846f3c 100644 --- a/rtengine/FTblockDN.cc +++ b/rtengine/FTblockDN.cc @@ -2146,6 +2146,9 @@ float ImProcFunctions::MadMax(float * DataList, int & max, int datalen) float ImProcFunctions::Mad(float * DataList, const int datalen) { + if(datalen <= 0) { // Avoid possible buffer underrun + return 0; + } //computes Median Absolute Deviation //DataList values should mostly have abs val < 256 because we are in Lab mode @@ -2172,6 +2175,9 @@ float ImProcFunctions::Mad(float * DataList, const int datalen) float ImProcFunctions::MadRgb(float * DataList, const int datalen) { + if(datalen <= 0) { // Avoid possible buffer underrun + return 0; + } //computes Median Absolute Deviation //DataList values should mostly have abs val < 65536 because we are in RGB mode