[ https://issues.apache.org/jira/browse/PDFBOX-3375?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andreas Lehmkühler resolved PDFBOX-3375. ---------------------------------------- Resolution: Fixed Set to resolved. > Use a static lock for a singleton > --------------------------------- > > Key: PDFBOX-3375 > URL: https://issues.apache.org/jira/browse/PDFBOX-3375 > Project: PDFBox > Issue Type: Bug > Components: PDModel > Affects Versions: 2.0.2, 2.1.0 > Reporter: Andreas Lehmkühler > Assignee: Andreas Lehmkühler > Fix For: 2.0.4, 2.1.0 > > Attachments: pdfbox3375.patch > > > Our build is failing from time to time throwing the following exception > {code} > java.awt.color.CMMException: Invalid profile data > at sun.java2d.cmm.kcms.CMM.checkStatus(CMM.java:180) > at sun.java2d.cmm.kcms.CMM.createTransform(CMM.java:134) > at java.awt.color.ICC_ColorSpace.toRGB(ICC_ColorSpace.java:166) > at > org.apache.pdfbox.pdmodel.graphics.color.PDDeviceRGB.init(PDDeviceRGB.java:69) > at > org.apache.pdfbox.pdmodel.graphics.color.PDDeviceRGB.toRGB(PDDeviceRGB.java:103) > at org.apache.pdfbox.rendering.PageDrawer.getPaint(PageDrawer.java:237) > at > org.apache.pdfbox.rendering.PageDrawer.getNonStrokingPaint(PageDrawer.java:529) > at org.apache.pdfbox.rendering.PageDrawer.fillPath(PageDrawer.java:600) > at > org.apache.pdfbox.contentstream.operator.graphics.FillNonZeroRule.process(FillNonZeroRule.java:36) > at > org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:815) > at > org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:472) > at > org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:446) > at > org.apache.pdfbox.contentstream.PDFStreamEngine.showForm(PDFStreamEngine.java:178) > at > org.apache.pdfbox.contentstream.operator.graphics.DrawObject.process(DrawObject.java:70) > at > org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:815) > at > org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:472) > at > org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:446) > at > org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149) > at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:189) > at > org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:145) > at > org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:68) > at > org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:55) > at > org.apache.pdfbox.rendering.TestRendering.render(TestRendering.java:79) > {code} > In PDDeviceRGB the non-static init method is synchronized using the instance > of the class as lock object. So far so good. But as the class is used a > singleton a static object has to be used as lock object. -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org For additional commands, e-mail: dev-h...@pdfbox.apache.org