Merge pull request #7258 from Lawrence37/raw-dehaze-crash-fix

Multi-frame image crash fix
This commit is contained in:
Lawrence37 2024-12-14 12:46:48 -08:00 committed by GitHub
commit 9fbdc25245
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 6 additions and 6 deletions

View File

@ -2690,9 +2690,9 @@ void RawImageSource::copyOriginalPixels(const RAWParams &raw, RawImage *src, con
*/
if (ri->getSensorType() == ST_BAYER) {
getMinValsBayer(ri->zeroIsBad());
getMinValsBayer(rawData, ri->zeroIsBad());
} else {
getMinValsXtrans();
getMinValsXtrans(rawData);
}
//
reddeha = minVals[0];
@ -8384,7 +8384,7 @@ void RawImageSource::getRawValues(int x, int y, int rotate, int &R, int &G, int
/*
Copyright (c) Ingo Weyrich 2020 (heckflosse67@gmx.de)
*/
void RawImageSource::getMinValsXtrans() {
void RawImageSource::getMinValsXtrans(const array2D<float> &rawData) {
#ifdef _OPENMP
#pragma omp parallel for reduction (min:minVals)
#endif
@ -8530,7 +8530,7 @@ void RawImageSource::applyDngGainMap(const float black[4], const std::vector<Gai
/*
Copyright (c) Ingo Weyrich 2020 (heckflosse67@gmx.de)
*/
void RawImageSource::getMinValsBayer(bool zeroIsBad) {
void RawImageSource::getMinValsBayer(const array2D<float> &rawData, bool zeroIsBad) {
BENCHFUN
if (!zeroIsBad) {
#ifdef _OPENMP

View File

@ -310,8 +310,8 @@ protected:
void vflip (Imagefloat* im);
void getRawValues(int x, int y, int rotate, int &R, int &G, int &B) override;
void captureSharpening(const procparams::CaptureSharpeningParams &sharpeningParams, bool showMask, double &conrastThreshold, double &radius) override;
void getMinValsXtrans();
void getMinValsBayer(bool zeroIsBad);
void getMinValsXtrans(const array2D<float> &rawData);
void getMinValsBayer(const array2D<float> &rawData, bool zeroIsBad);
void applyDngGainMap(const float black[4], const std::vector<GainMap> &gainMaps);
public:
void wbMul2Camera(double &rm, double &gm, double &bm) override;