propagated fix for EXR from 2.3 branch to trunk

This commit is contained in:
Vadim Pisarevsky
2011-08-02 12:55:05 +00:00
parent f0b3cb1845
commit ce2f4c6a4d
4 changed files with 15 additions and 4 deletions

View File

@@ -736,9 +736,10 @@ void cv::minMaxIdx(InputArray _src, double* minVal,
InputArray _mask)
{
Mat src = _src.getMat(), mask = _mask.getMat();
int depth = src.depth();
int depth = src.depth(), cn = src.channels();
CV_Assert( src.channels() == 1 && (mask.empty() || mask.type() == CV_8U) );
CV_Assert( (cn == 1 && (mask.empty() || mask.type() == CV_8U)) ||
(cn >= 1 && mask.empty() && !minIdx && !maxIdx) );
MinMaxIdxFunc func = minmaxTab[depth];
CV_Assert( func != 0 );
@@ -752,7 +753,7 @@ void cv::minMaxIdx(InputArray _src, double* minVal,
double dminval = DBL_MAX, dmaxval = -DBL_MAX;
size_t startidx = 1;
int *minval = &iminval, *maxval = &imaxval;
int planeSize = (int)it.size;
int planeSize = (int)it.size*cn;
if( depth == CV_32F )
minval = (int*)&fminval, maxval = (int*)&fmaxval;