From 52216c7c9b7a583f0aa23e23aed0fb105a921358 Mon Sep 17 00:00:00 2001 From: nrkumar93 Date: Sun, 18 Sep 2016 22:55:20 -0400 Subject: [PATCH] Fixing assert statement for CV_MAT_ELEM to work for multichannel images. Previously works only for single channel images. --- modules/core/include/opencv2/core/types_c.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/core/include/opencv2/core/types_c.h b/modules/core/include/opencv2/core/types_c.h index a25a565df67a..1beb2218c254 100644 --- a/modules/core/include/opencv2/core/types_c.h +++ b/modules/core/include/opencv2/core/types_c.h @@ -535,10 +535,10 @@ inline CvMat::CvMat(const cv::Mat& m) #define CV_MAT_ELEM_PTR_FAST( mat, row, col, pix_size ) \ - (assert( (unsigned)(row) < (unsigned)(mat).rows && \ - (unsigned)(col) < (unsigned)(mat).cols ), \ - (mat).data.ptr + (size_t)(mat).step*(row) + (pix_size)*(col)) - + (assert( (unsigned)(row) < (unsigned)(mat).rows && \ + (unsigned)(col) < (unsigned)(mat).cols*((mat).step/(mat).cols)), \ + (mat).data.ptr + (size_t)(mat).step*(row) + (pix_size)*(col)) + #define CV_MAT_ELEM_PTR( mat, row, col ) \ CV_MAT_ELEM_PTR_FAST( mat, row, col, CV_ELEM_SIZE((mat).type) )