You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Andreas Lehmkühler (JIRA)" <ji...@apache.org> on 2009/05/10 19:44:45 UTC

[jira] Resolved: (PDFBOX-442) race condition in PdfFont

     [ https://issues.apache.org/jira/browse/PDFBOX-442?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Lehmkühler resolved PDFBOX-442.
---------------------------------------

       Resolution: Fixed
    Fix Version/s: 0.8.0-incubator

The second get on the map isn't needed. If we have the value, than we don't have to get it twice. Furthermore the cmapObjects is a synchronized map so that all accesses to that class-member shouldn't  be critical even in a multithreded environment.
I've delete the unneeded second get on the map with version 773370.

> race condition in PdfFont
> -------------------------
>
>                 Key: PDFBOX-442
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-442
>             Project: PDFBox
>          Issue Type: Bug
>    Affects Versions: 0.7.3
>            Reporter: Sean Bridges
>             Fix For: 0.8.0-incubator
>
>
> this code in PDFFont.encode isn't thread safe,
>                         COSName encodingName = (COSName)encoding;
>                         cmap = (CMap)cmapObjects.get( encodingName );
>                         if( cmap != null )
>                         {
>                             cmap = (CMap)cmapObjects.get( encodingName );
>                         }
> cmap may be cleared in PDFont.clearResources(), and it may be cleared in the interval between the two get() calls.  The first get() may be non null, while the second may be null.  The second get may be removed altogether.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.