diff --git a/rtdata/dcpprofiles/Canon EOS 600D.dcp b/rtdata/dcpprofiles/Canon EOS 600D.dcp new file mode 100644 index 000000000..bd8bae0a7 Binary files /dev/null and b/rtdata/dcpprofiles/Canon EOS 600D.dcp differ diff --git a/rtdata/dcpprofiles/Canon EOS 6D.dcp b/rtdata/dcpprofiles/Canon EOS 6D.dcp index 3dc00a95f..01cf29e93 100644 Binary files a/rtdata/dcpprofiles/Canon EOS 6D.dcp and b/rtdata/dcpprofiles/Canon EOS 6D.dcp differ diff --git a/rtdata/dcpprofiles/Canon EOS Kiss X5.dcp b/rtdata/dcpprofiles/Canon EOS Kiss X5.dcp new file mode 100644 index 000000000..bd8bae0a7 Binary files /dev/null and b/rtdata/dcpprofiles/Canon EOS Kiss X5.dcp differ diff --git a/rtdata/dcpprofiles/Canon EOS Rebel T3i.dcp b/rtdata/dcpprofiles/Canon EOS Rebel T3i.dcp new file mode 100644 index 000000000..bd8bae0a7 Binary files /dev/null and b/rtdata/dcpprofiles/Canon EOS Rebel T3i.dcp differ diff --git a/rtdata/dcpprofiles/FUJIFILM FinePix F600EXR.dcp b/rtdata/dcpprofiles/FUJIFILM FinePix F600EXR.dcp new file mode 100644 index 000000000..7b1dd6c28 Binary files /dev/null and b/rtdata/dcpprofiles/FUJIFILM FinePix F600EXR.dcp differ diff --git a/rtengine/improcfun.cc b/rtengine/improcfun.cc index 912f0a933..96a0ff7d3 100644 --- a/rtengine/improcfun.cc +++ b/rtengine/improcfun.cc @@ -3782,13 +3782,12 @@ void ImProcFunctions::rgbProc(Imagefloat* working, LabImage* lab, PipetteBuffer float g = std::max(gtemp[ti * TS + tj], 0.f); float b = std::max(btemp[ti * TS + tj], 0.f); - if (r > 65535 || g > 65535 || b > 65535) { + if (max(r, g, b) > MAXVALF && min(r, g, b) < MAXVALF) { filmlike_clip(&r, &g, &b); } - - setUnlessOOG(rtemp[ti * TS + tj], r); - setUnlessOOG(gtemp[ti * TS + tj], g); - setUnlessOOG(btemp[ti * TS + tj], b); + rtemp[ti * TS + tj] = r; + gtemp[ti * TS + tj] = g; + btemp[ti * TS + tj] = b; } }