提交 a74a2302 编写于 作者: V Vadim Pisarevsky

fixed bug #2331

上级 a08290d8
......@@ -209,6 +209,7 @@ void Mat::copyTo( OutputArray _dst ) const
int dtype = _dst.type();
if( _dst.fixedType() && dtype != type() )
{
CV_Assert( channels() == CV_MAT_CN(dtype) );
convertTo( _dst, dtype );
return;
}
......
......@@ -766,6 +766,19 @@ bool CV_OperationsTest::TestTemplateMat()
Mat c = (a*b.t()).t();
CV_Assert( norm(c, CV_L1) == 4. );
}
bool badarg_catched = false;
try
{
Mat m1 = Mat::zeros(1, 10, CV_8UC1);
Mat m2 = Mat::zeros(10, 10, CV_8UC3);
m1.copyTo(m2.row(1));
}
catch(const Exception& e)
{
badarg_catched = true;
}
CV_Assert( badarg_catched );
}
catch (const test_excep& e)
{
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册