Deliberately not changed (reported on the issue instead)
m_useHToS is inert. Written by this decode, read only by toJson(), and no
further: no AddXform overload takes an HToS argument, and CheckPCSRangeConversions()
injects the HToS transform whenever the tag is present regardless of any flag. So
+100000 round-trips through the JSON config but selects nothing — before this change
it at least turned V5 on, which was the bug. Wiring it through is a library API change.
The docs and test comments now say the column is recorded, not honoured.
51/61/71/81 are not bogus (refutes Finding 2). The units digit indexes real tags:
icSigBrdfSpectralParameter0Tag + nTagIntent (IccCmm.cpp:957), icSigBRDFDToB0Tag
(:1001), icSigBRDFMToS0Tag (:1058), icSigMToS0Tag (:1151), with nTagIntent
being the CLI digit at :540. Rejecting them would remove reachable function. The gap
is in Usage(), which prints 50 - BDRF Model where it prints 20 + Intent - Preview
for the structurally identical Preview case — left for maintainer ruling.
31/32 likewise: gamut always reads icSigGamutTag (:929, no nTagIntent) and
only absolute is special-cased (:1535), so 30/31/32 are genuinely identical and
33 differs — exactly what the two documented lines say.
Originally posted by @xsscx in #2261 (comment)
Originally posted by @xsscx in #2261 (comment)