fixed bug with Mat::dataend initialization. Now morph-ex test passes; Also fixed CV_Assert() implementation
This commit is contained in:
@@ -199,11 +199,11 @@ CV_EXPORTS ErrorCallback redirectError( ErrorCallback errCallback,
|
||||
#ifdef __GNUC__
|
||||
#define CV_Error( code, msg ) cv::error( cv::Exception(code, msg, __func__, __FILE__, __LINE__) )
|
||||
#define CV_Error_( code, args ) cv::error( cv::Exception(code, cv::format args, __func__, __FILE__, __LINE__) )
|
||||
#define CV_Assert( expr ) do { if(!(expr)) cv::error( cv::Exception(CV_StsAssert, #expr, __func__, __FILE__, __LINE__) ); } while(0)
|
||||
#define CV_Assert( expr ) if((expr)) ; else cv::error( cv::Exception(CV_StsAssert, #expr, __func__, __FILE__, __LINE__) )
|
||||
#else
|
||||
#define CV_Error( code, msg ) cv::error( cv::Exception(code, msg, "", __FILE__, __LINE__) )
|
||||
#define CV_Error_( code, args ) cv::error( cv::Exception(code, cv::format args, "", __FILE__, __LINE__) )
|
||||
#define CV_Assert( expr ) do { if(!(expr)) cv::error( cv::Exception(CV_StsAssert, #expr, "", __FILE__, __LINE__) ); } while(0)
|
||||
#define CV_Assert( expr ) if((expr)) ; else cv::error( cv::Exception(CV_StsAssert, #expr, "", __FILE__, __LINE__) )
|
||||
#endif
|
||||
|
||||
#ifdef _DEBUG
|
||||
|
@@ -147,15 +147,16 @@ static void updateContinuityFlag(Mat& m)
|
||||
static void finalizeHdr(Mat& m)
|
||||
{
|
||||
updateContinuityFlag(m);
|
||||
if( m.dims > 2 )
|
||||
int d = m.dims;
|
||||
if( d > 2 )
|
||||
m.rows = m.cols = -1;
|
||||
if( m.data )
|
||||
{
|
||||
m.datalimit = m.datastart + m.size[0]*m.step[0];
|
||||
if( m.size[0] > 0 )
|
||||
{
|
||||
m.dataend = m.data;
|
||||
for( int i = 0; i < m.dims; i++ )
|
||||
m.dataend = m.data + m.size[d-1]*m.step[d-1];
|
||||
for( int i = 0; i < d-1; i++ )
|
||||
m.dataend += (m.size[i] - 1)*m.step[i];
|
||||
}
|
||||
else
|
||||
@@ -599,7 +600,7 @@ void Mat::push_back(const Mat& elems)
|
||||
|
||||
|
||||
Mat cvarrToMat(const CvArr* arr, bool copyData,
|
||||
bool allowND, int coiMode)
|
||||
bool /*allowND*/, int coiMode)
|
||||
{
|
||||
if( !arr )
|
||||
return Mat();
|
||||
|
Reference in New Issue
Block a user