RFR: 8282577: ICC_Profile.setTagData() invalidates the profile

Phil Race prr at openjdk.java.net
Wed Mar 2 20:59:45 UTC 2022


As per the bug eval, we are returning a pointer to a native raw LittleCMS profile and it should be a cooked one.
The simple test fails before the fix with
~/jdk17/Contents/Home/bin/java SetTagDataValidation                               
Exception in thread "main" java.awt.color.CMMException: LCMS error 13: Couldn't link the profiles
	at java.desktop/sun.java2d.cmm.lcms.LCMS.createNativeTransform(Native Method)
	at java.desktop/sun.java2d.cmm.lcms.LCMS.createTransform(LCMS.java:104)
	at java.desktop/sun.java2d.cmm.lcms.LCMSTransform.doTransform(LCMSTransform.java:143)
	at java.desktop/sun.java2d.cmm.lcms.LCMSTransform.colorConvert(LCMSTransform.java:633)
	at java.desktop/java.awt.color.ICC_ColorSpace.toRGB(ICC_ColorSpace.java:224)
	at SetTagDataValidation.main(SetTagDataValidation.java:61)

and with the fix  just prints 
java SetTagDataValidation
0.4
0.5000076
0.6

-------------

Commit messages:
 - 8282577: ICC_Profile.setTagData() invalidates the profile

Changes: https://git.openjdk.java.net/jdk/pull/7668/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=7668&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8282577
  Stats: 79 lines in 2 files changed: 77 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/7668.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/7668/head:pull/7668

PR: https://git.openjdk.java.net/jdk/pull/7668



More information about the client-libs-dev mailing list