Merge pull request #6570 from Lawrence37/canon-white-regression

Canon 1000D White Level Regression Fix
This commit is contained in:
Lawrence37 2022-08-30 07:53:03 -07:00 committed by GitHub
commit 2ce5b827c5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -9082,8 +9082,21 @@ void CLASS adobe_coeff (const char *make, const char *model)
for (i=0; i < sizeof table / sizeof *table; i++)
if (!strncmp (name, table[i].prefix, strlen(table[i].prefix))) {
if (RT_blacklevel_from_constant == ThreeValBool::T && table[i].black) black = (ushort) table[i].black;
if (RT_whitelevel_from_constant == ThreeValBool::T && table[i].maximum) maximum = (ushort) table[i].maximum;
if (RT_blacklevel_from_constant == ThreeValBool::T && table[i].black) {
if (RT_canon_levels_data.black_ok) {
unsigned c;
FORC4 RT_canon_levels_data.cblack[c] = (ushort) table[i].black;
} else {
black = (ushort) table[i].black;
}
}
if (RT_whitelevel_from_constant == ThreeValBool::T && table[i].maximum) {
if (RT_canon_levels_data.white_ok) {
RT_canon_levels_data.white = (ushort) table[i].maximum;
} else {
maximum = (ushort) table[i].maximum;
}
}
if (RT_matrix_from_constant == ThreeValBool::T && table[i].trans[0]) {
for (raw_color = j=0; j < 12; j++)
((double *)cam_xyz)[j] = table[i].trans[j] / 10000.0;