diff --git a/modules/imgcodecs/src/loadsave.cpp b/modules/imgcodecs/src/loadsave.cpp index 4e626cd216..44c458c727 100644 --- a/modules/imgcodecs/src/loadsave.cpp +++ b/modules/imgcodecs/src/loadsave.cpp @@ -1065,7 +1065,9 @@ cvSaveImage( const char* filename, const CvArr* arr, const int* _params ) for( ; _params[i] > 0; i += 2 ) CV_Assert(static_cast(i) < cv::CV_IO_MAX_IMAGE_PARAMS*2); // Limit number of params for security reasons } - return cv::imwrite_(filename, cv::cvarrToMat(arr), + std::vector img_vec; + img_vec.push_back(cv::cvarrToMat(arr)); + return cv::imwrite_(filename, img_vec, i > 0 ? std::vector(_params, _params+i) : std::vector(), CV_IS_IMAGE(arr) && ((const IplImage*)arr)->origin == IPL_ORIGIN_BL ); }