You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2015/09/23 01:15:43 UTC

svn commit: r1704749 - /pdfbox/branches/1.8/fontbox/src/main/java/org/apache/fontbox/ttf/AbstractTTFParser.java

Author: tilman
Date: Tue Sep 22 23:15:42 2015
New Revision: 1704749

URL: http://svn.apache.org/viewvc?rev=1704749&view=rev
Log:
PDFBOX-2986: avoid potential resource leak when exception

Modified:
    pdfbox/branches/1.8/fontbox/src/main/java/org/apache/fontbox/ttf/AbstractTTFParser.java

Modified: pdfbox/branches/1.8/fontbox/src/main/java/org/apache/fontbox/ttf/AbstractTTFParser.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/1.8/fontbox/src/main/java/org/apache/fontbox/ttf/AbstractTTFParser.java?rev=1704749&r1=1704748&r2=1704749&view=diff
==============================================================================
--- pdfbox/branches/1.8/fontbox/src/main/java/org/apache/fontbox/ttf/AbstractTTFParser.java (original)
+++ pdfbox/branches/1.8/fontbox/src/main/java/org/apache/fontbox/ttf/AbstractTTFParser.java Tue Sep 22 23:15:42 2015
@@ -69,8 +69,17 @@ abstract class AbstractTTFParser
      */
     public TrueTypeFont parseTTF( File ttfFile ) throws IOException
     {
-        RAFDataStream raf = new RAFDataStream( ttfFile, "r" );
-        return parseTTF( raf );
+        RAFDataStream raf = new RAFDataStream(ttfFile, "r");
+        try
+        {
+            return parseTTF(raf);
+        }
+        catch (IOException ex)
+        {
+            // close only on error (file is still being accessed later)
+            raf.close();
+            throw ex;
+        }
     }
     
     /**