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 2021/04/02 14:04:00 UTC
svn commit: r1888307 - in
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel:
font/FontMapperImpl.java font/Standard14Fonts.java
graphics/color/PDDeviceCMYK.java
Author: tilman
Date: Fri Apr 2 14:04:00 2021
New Revision: 1888307
URL: http://svn.apache.org/viewvc?rev=1888307&view=rev
Log:
PDFBOX-4892: check for resource before buffering, as suggested by valerybokov
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FontMapperImpl.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/Standard14Fonts.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDDeviceCMYK.java
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FontMapperImpl.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FontMapperImpl.java?rev=1888307&r1=1888306&r2=1888307&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FontMapperImpl.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/FontMapperImpl.java Fri Apr 2 14:04:00 2021
@@ -112,14 +112,15 @@ final class FontMapperImpl implements Fo
// -------------------------
- String ttfName = "/org/apache/pdfbox/resources/ttf/LiberationSans-Regular.ttf";
- try (InputStream resourceAsStream = FontMapper.class.getResourceAsStream(ttfName);
- InputStream ttfStream = new BufferedInputStream(resourceAsStream))
+ try
{
+ String resourceName = "/org/apache/pdfbox/resources/ttf/LiberationSans-Regular.ttf";
+ InputStream resourceAsStream = FontMapper.class.getResourceAsStream(resourceName);
if (resourceAsStream == null)
{
- throw new IOException("resource '" + ttfName + "' not found");
+ throw new IOException("resource '" + resourceName + "' not found");
}
+ InputStream ttfStream = new BufferedInputStream(resourceAsStream);
TTFParser ttfParser = new TTFParser();
lastResortFont = ttfParser.parse(ttfStream);
}
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/Standard14Fonts.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/Standard14Fonts.java?rev=1888307&r1=1888306&r2=1888307&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/Standard14Fonts.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/Standard14Fonts.java Fri Apr 2 14:04:00 2021
@@ -114,13 +114,13 @@ final class Standard14Fonts
private static void loadMetrics(String fontName) throws IOException
{
String resourceName = "/org/apache/pdfbox/resources/afm/" + fontName + ".afm";
- try (InputStream resourceAsStream = PDType1Font.class.getResourceAsStream(resourceName);
- InputStream afmStream = new BufferedInputStream(resourceAsStream))
+ InputStream resourceAsStream = PDType1Font.class.getResourceAsStream(resourceName);
+ if (resourceAsStream == null)
+ {
+ throw new IOException("resource '" + resourceName + "' not found");
+ }
+ try (InputStream afmStream = new BufferedInputStream(resourceAsStream))
{
- if (resourceAsStream == null)
- {
- throw new IOException("resource '" + resourceName + "' not found");
- }
AFMParser parser = new AFMParser(afmStream);
FontMetrics metric = parser.parse(true);
FONTS.put(fontName, metric);
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDDeviceCMYK.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDDeviceCMYK.java?rev=1888307&r1=1888306&r2=1888307&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDDeviceCMYK.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDDeviceCMYK.java Fri Apr 2 14:04:00 2021
@@ -99,10 +99,13 @@ public class PDDeviceCMYK extends PDDevi
// Instead, the "ISO Coated v2 300% (basICColor)" is used, which
// is an open alternative to the "ISO Coated v2 300% (ECI)" profile.
- String name = "/org/apache/pdfbox/resources/icc/ISOcoated_v2_300_bas.icc";
-
- try (InputStream resourceAsStream = PDDeviceCMYK.class.getResourceAsStream(name);
- InputStream is = new BufferedInputStream(resourceAsStream))
+ String resourceName = "/org/apache/pdfbox/resources/icc/ISOcoated_v2_300_bas.icc";
+ InputStream resourceAsStream = PDDeviceCMYK.class.getResourceAsStream(resourceName);
+ if (resourceAsStream == null)
+ {
+ throw new IOException("resource '" + resourceName + "' not found");
+ }
+ try (InputStream is = new BufferedInputStream(resourceAsStream))
{
return ICC_Profile.getInstance(is);
}