Skip to content

SIGILL in merge #24242

@atsju

Description

@atsju

System Information

OpenCV version: 4.5.4
Operating System / Platform: Ubuntu 22.04.3 LTS
Compiler & compiler version: g++ (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0

I also reproduced error on CV 4.6.0 on windows but the minimal example has been tested on Ubuntu with CV4.5.4.

Detailed description

Using cv::merge with NULL matrix is causing SIGILL.
I'm fully expecting a crash or any error but not a SIGILL as this leads to not executing the final stacktrace in our application.

Steps to reproduce

main.cpp:

#include <iostream>
#include <opencv2/opencv.hpp>

int main(int argc, char *argv[])
{   
    cv::Mat planes[4];
    cv::Mat mm;
    std::cout<< "hello there before"<<std::endl;
    cv::merge(planes,3,mm);
    std::cout<< "hello there after"<<std::endl;

    return 0;
}

compile with:

g++ -o your_program_name main.cpp `pkg-config opencv4 --cflags --libs`

Issue submission checklist

  • I report the issue, it's not a question
  • I checked the problem with documentation, FAQ, open issues, forum.opencv.org, Stack Overflow, etc and have not found any solution
  • I updated to the latest OpenCV version and the issue is still there
  • There is reproducer code and related data files (videos, images, onnx, etc)

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions