diff --git a/rtengine/rtthumbnail.cc b/rtengine/rtthumbnail.cc index 671fd6f96..d636c718d 100644 --- a/rtengine/rtthumbnail.cc +++ b/rtengine/rtthumbnail.cc @@ -767,6 +767,7 @@ IImage8* Thumbnail::processImage (const procparams::ProcParams& params, int rhei } int Thumbnail::getImageWidth (const procparams::ProcParams& params, int rheight) { + if (thumbImg==NULL) return 0; // Can happen if thumb is just building and GUI comes in with resize wishes int rwidth; if (params.coarse.rotate==90 || params.coarse.rotate==270) @@ -878,6 +879,7 @@ void Thumbnail::getSpotWB (const procparams::ProcParams& params, int xp, int yp, rtemp = ct.getTemp (); rgreen = ct.getGreen (); } + void Thumbnail::transformPixel (int x, int y, int tran, int& tx, int& ty) { int W = thumbImg->width; diff --git a/rtgui/thumbnail.cc b/rtgui/thumbnail.cc index a24351431..153130109 100644 --- a/rtgui/thumbnail.cc +++ b/rtgui/thumbnail.cc @@ -272,11 +272,9 @@ void Thumbnail::decreaseRef () } void Thumbnail::getThumbnailSize (int &w, int &h) { - - if (tpp) - w = tpp->getImageWidth (getProcParams(), h); - else - w = tw * h / th; + w=0; + if (tpp) w = tpp->getImageWidth (getProcParams(), h); // this might return 0 if image was just building + if (w==0) w = tw * h / th; } rtengine::IImage8* Thumbnail::processThumbImage (const rtengine::procparams::ProcParams& pparams, int h, double& scale) {