From 0cffdd1e74ea66aa0ae5f30d493d97138fc448bc Mon Sep 17 00:00:00 2001 From: David Kuettel Date: Thu, 18 Apr 2013 10:34:18 -0700 Subject: [PATCH] Catch, log and continue upon encountering an exception --- .../font/compression/SimpleRunner.java | 29 +++++++++++-------- 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/src/com/google/typography/font/compression/SimpleRunner.java b/src/com/google/typography/font/compression/SimpleRunner.java index 08089bb..7298293 100644 --- a/src/com/google/typography/font/compression/SimpleRunner.java +++ b/src/com/google/typography/font/compression/SimpleRunner.java @@ -36,20 +36,25 @@ public class SimpleRunner { private static void run(CompressionStats stats, String[] filenames) throws IOException { for (String filename : filenames) { - File file = new File(filename); - byte[] bytes = Files.toByteArray(file); - Font font = FONT_FACTORY.loadFonts(bytes)[0]; + try { + File file = new File(filename); + byte[] bytes = Files.toByteArray(file); + Font font = FONT_FACTORY.loadFonts(bytes)[0]; - byte[] gzip = Experiment.run(font, GZIP); - byte[] woff2 = Experiment.run(font, WOFF2); + byte[] gzip = Experiment.run(font, GZIP); + byte[] woff2 = Experiment.run(font, WOFF2); - stats.add( - CompressionStats.Stats.builder() - .setFilename(file.getName()) - .setSize(CompressionStats.Size.ORIGINAL, bytes.length) - .setSize(CompressionStats.Size.GZIP, gzip.length) - .setSize(CompressionStats.Size.WOFF2, woff2.length) - .build()); + stats.add( + CompressionStats.Stats.builder() + .setFilename(file.getName()) + .setSize(CompressionStats.Size.ORIGINAL, bytes.length) + .setSize(CompressionStats.Size.GZIP, gzip.length) + .setSize(CompressionStats.Size.WOFF2, woff2.length) + .build()); + } catch (Throwable t) { + System.err.printf("WARNING: failed to compress: %s\n", filename); + t.printStackTrace(); + } } }