Bug 46882

Summary: [PATCH] ArrayIndexOutOfBoundsException when applying a CMYK color in PDFGraphics2D
Product: Fop - Now in Jira Reporter: Yegor Kozlov <yegor>
Component: pdfAssignee: fop-dev
Status: CLOSED FIXED    
Severity: normal Keywords: PatchAvailable
Priority: P2    
Version: trunk   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Attachments: the patch
sample program to reproduce the trouble

Description Yegor Kozlov 2009-03-20 01:44:41 UTC
There are two bugs in PDFGraphics2D.applyColor.

Firstly, when applying a color with CMYK colorspace the number of components is 4, not 3.
See line 744:
  float[] cComps = c.getColorComponents(new float[3]); //results in ArrayIndexOutOfBoundsException

Secondly, Color.getColorComponents returns values in the range [0, 1] while PDFColor expects them in the [0, 255] range.

I attached the patch and a sample program to reproduce the trouble.

Regards,
Yegor kozlov
Comment 1 Yegor Kozlov 2009-03-20 01:45:18 UTC
Created attachment 23394 [details]
the patch
Comment 2 Yegor Kozlov 2009-03-20 01:45:48 UTC
Created attachment 23395 [details]
sample program to reproduce the trouble
Comment 3 Jeremias Maerki 2009-03-23 00:49:10 UTC
Thanks for noticing that bug. I've just fixed it but not using your patch as it contained a bug (*256 is not correct) and it was possible to this in a much simpler way.

http://svn.apache.org/viewvc?rev=757338&view=rev
Comment 4 Glenn Adams 2012-04-01 06:49:10 UTC
batch transition pre-FOP1.0 resolved+fixed bugs to closed+fixed