diff -r 1228c1be380f modules/graphics/src/main/java/com/sun/javafx/font/directwrite/DWGlyph.java --- a/modules/graphics/src/main/java/com/sun/javafx/font/directwrite/DWGlyph.java Mon Sep 16 18:40:30 2013 +0200 +++ b/modules/graphics/src/main/java/com/sun/javafx/font/directwrite/DWGlyph.java Tue Sep 17 09:06:37 2013 -0700 @@ -97,13 +97,15 @@ int textureType = OS.DWRITE_TEXTURE_CLEARTYPE_3x1; IDWriteGlyphRunAnalysis runAnalysis = createAnalysis(0, 0); rect = runAnalysis.GetAlphaTextureBounds(textureType); - if ((rect.right - rect.left == 0) || - (rect.bottom - rect.top == 0)) { + if (rect == null || rect.right - rect.left == 0 || rect.bottom - rect.top == 0) { /* Check for both texture types due to some limitations with * IDWriteGlyphRunAnalysis. See RT-31587. */ rect = runAnalysis.GetAlphaTextureBounds(OS.DWRITE_TEXTURE_ALIASED_1x1); } + if (rect == null) { + rect = new RECT(); + } runAnalysis.Release(); }