mirror of
https://github.com/opencv/opencv.git
synced 2026-07-29 15:23:05 +04:00
Merge pull request #17077 from i386x:check-negative-values
This commit is contained in:
@@ -914,7 +914,7 @@ bool _InputArray::isContinuous(int i) const
|
||||
if( k == STD_ARRAY_MAT )
|
||||
{
|
||||
const Mat* vv = (const Mat*)obj;
|
||||
CV_Assert(i > 0 && i < sz.height);
|
||||
CV_Assert(i >= 0 && i < sz.height);
|
||||
return vv[i].isContinuous();
|
||||
}
|
||||
|
||||
@@ -948,21 +948,21 @@ bool _InputArray::isSubmatrix(int i) const
|
||||
if( k == STD_VECTOR_MAT )
|
||||
{
|
||||
const std::vector<Mat>& vv = *(const std::vector<Mat>*)obj;
|
||||
CV_Assert((size_t)i < vv.size());
|
||||
CV_Assert(i >= 0 && (size_t)i < vv.size());
|
||||
return vv[i].isSubmatrix();
|
||||
}
|
||||
|
||||
if( k == STD_ARRAY_MAT )
|
||||
{
|
||||
const Mat* vv = (const Mat*)obj;
|
||||
CV_Assert(i < sz.height);
|
||||
CV_Assert(i >= 0 && i < sz.height);
|
||||
return vv[i].isSubmatrix();
|
||||
}
|
||||
|
||||
if( k == STD_VECTOR_UMAT )
|
||||
{
|
||||
const std::vector<UMat>& vv = *(const std::vector<UMat>*)obj;
|
||||
CV_Assert((size_t)i < vv.size());
|
||||
CV_Assert(i >= 0 && (size_t)i < vv.size());
|
||||
return vv[i].isSubmatrix();
|
||||
}
|
||||
|
||||
@@ -993,9 +993,7 @@ size_t _InputArray::offset(int i) const
|
||||
if( k == STD_VECTOR_MAT )
|
||||
{
|
||||
const std::vector<Mat>& vv = *(const std::vector<Mat>*)obj;
|
||||
if( i < 0 )
|
||||
return 1;
|
||||
CV_Assert( i < (int)vv.size() );
|
||||
CV_Assert( i >= 0 && i < (int)vv.size() );
|
||||
|
||||
return (size_t)(vv[i].ptr() - vv[i].datastart);
|
||||
}
|
||||
@@ -1003,16 +1001,14 @@ size_t _InputArray::offset(int i) const
|
||||
if( k == STD_ARRAY_MAT )
|
||||
{
|
||||
const Mat* vv = (const Mat*)obj;
|
||||
if( i < 0 )
|
||||
return 1;
|
||||
CV_Assert( i < sz.height );
|
||||
CV_Assert( i >= 0 && i < sz.height );
|
||||
return (size_t)(vv[i].ptr() - vv[i].datastart);
|
||||
}
|
||||
|
||||
if( k == STD_VECTOR_UMAT )
|
||||
{
|
||||
const std::vector<UMat>& vv = *(const std::vector<UMat>*)obj;
|
||||
CV_Assert((size_t)i < vv.size());
|
||||
CV_Assert(i >= 0 && (size_t)i < vv.size());
|
||||
return vv[i].offset;
|
||||
}
|
||||
|
||||
@@ -1026,7 +1022,7 @@ size_t _InputArray::offset(int i) const
|
||||
if (k == STD_VECTOR_CUDA_GPU_MAT)
|
||||
{
|
||||
const std::vector<cuda::GpuMat>& vv = *(const std::vector<cuda::GpuMat>*)obj;
|
||||
CV_Assert((size_t)i < vv.size());
|
||||
CV_Assert(i >= 0 && (size_t)i < vv.size());
|
||||
return (size_t)(vv[i].data - vv[i].datastart);
|
||||
}
|
||||
|
||||
@@ -1056,25 +1052,21 @@ size_t _InputArray::step(int i) const
|
||||
if( k == STD_VECTOR_MAT )
|
||||
{
|
||||
const std::vector<Mat>& vv = *(const std::vector<Mat>*)obj;
|
||||
if( i < 0 )
|
||||
return 1;
|
||||
CV_Assert( i < (int)vv.size() );
|
||||
CV_Assert( i >= 0 && i < (int)vv.size() );
|
||||
return vv[i].step;
|
||||
}
|
||||
|
||||
if( k == STD_ARRAY_MAT )
|
||||
{
|
||||
const Mat* vv = (const Mat*)obj;
|
||||
if( i < 0 )
|
||||
return 1;
|
||||
CV_Assert( i < sz.height );
|
||||
CV_Assert( i >= 0 && i < sz.height );
|
||||
return vv[i].step;
|
||||
}
|
||||
|
||||
if( k == STD_VECTOR_UMAT )
|
||||
{
|
||||
const std::vector<UMat>& vv = *(const std::vector<UMat>*)obj;
|
||||
CV_Assert((size_t)i < vv.size());
|
||||
CV_Assert(i >= 0 && (size_t)i < vv.size());
|
||||
return vv[i].step;
|
||||
}
|
||||
|
||||
@@ -1086,7 +1078,7 @@ size_t _InputArray::step(int i) const
|
||||
if (k == STD_VECTOR_CUDA_GPU_MAT)
|
||||
{
|
||||
const std::vector<cuda::GpuMat>& vv = *(const std::vector<cuda::GpuMat>*)obj;
|
||||
CV_Assert((size_t)i < vv.size());
|
||||
CV_Assert(i >= 0 && (size_t)i < vv.size());
|
||||
return vv[i].step;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user