mirror of
https://github.com/opencv/opencv.git
synced 2026-07-27 22:33:03 +04:00
5a0679b862
Fixes #28095 Problem: - Stateful kernels dereference null state pointer on line 446 in gcpukernel.hpp - jinboson confirmed state_ptr is null on x86 Ubuntu (7 hours ago) - Causes crash with std::shared_ptr assertion on LoongArch64 and strict platforms Solution (addressing Copilot review feedback from PR #28096): 1. Added null pointer check using CV_Error instead of CV_Assert: - CV_Assert with && 'message' doesn't display the message correctly - CV_Error properly reports cv::Error::StsNullPtr with clear message 2. Fixed test kernels to properly initialize state using std::make_shared: - GOCVStInvalidResize: Initialize state in setup() - GOCVCountStateSetups: Initialize state before incrementing counter - Used std::make_shared<int>() for modern C++ best practice Impact: - Prevents crashes on platforms with strict null pointer checking - Provides actionable error message for developers - Fixes StatefulKernel.StateInitOnceInRegularMode and InvalidReallocatingKernel tests