core(MatExpr): fix warning in case of e.s == (0, 0, 0, 0)
authorAlexander Alekhin <alexander.a.alekhin@gmail.com>
Fri, 1 May 2020 07:29:10 +0000 (07:29 +0000)
committerAlexander Alekhin <alexander.a.alekhin@gmail.com>
Fri, 1 May 2020 07:29:57 +0000 (07:29 +0000)
modules/core/src/matrix_expressions.cpp

index 58c99ed..44ac8f1 100644 (file)
@@ -1329,7 +1329,7 @@ void MatOp_AddEx::assign(const MatExpr& e, Mat& m, int _type) const
     }
     else if( e.s.isReal() && (dst.data != m.data || fabs(e.alpha) != 1))
     {
-        if (e.a.channels() > 1)
+        if (e.a.channels() > 1 && e.s[0] != 0.0)
             CV_LOG_ONCE_WARNING(NULL, "OpenCV/MatExpr: processing of multi-channel arrays might be changed in the future: "
                                       "https://github.com/opencv/opencv/issues/16739");
         e.a.convertTo(m, _type, e.alpha, e.s[0]);