Skip to content

Commit ef2e5a9

Browse files
committed
Merge pull request opencv#8988 from sovrasov:repeat_src_eq_dst_fix
2 parents 48924cd + 4f98718 commit ef2e5a9

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

modules/core/src/copy.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -856,6 +856,7 @@ void repeat(InputArray _src, int ny, int nx, OutputArray _dst)
856856
{
857857
CV_INSTRUMENT_REGION()
858858

859+
CV_Assert(_src.getObj() != _dst.getObj());
859860
CV_Assert( _src.dims() <= 2 );
860861
CV_Assert( ny > 0 && nx > 0 );
861862

modules/core/test/test_misc.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,3 +145,12 @@ TEST(Core_String, end_method_regression)
145145
cv::String new_string(old_string.begin(), old_string.end());
146146
EXPECT_EQ(6u, new_string.size());
147147
}
148+
149+
TEST(Core_Copy, repeat_regression_8972)
150+
{
151+
Mat src = (Mat_<int>(1, 4) << 1, 2, 3, 4);
152+
153+
ASSERT_ANY_THROW({
154+
repeat(src, 5, 1, src);
155+
});
156+
}

0 commit comments

Comments
 (0)