src/solaris/classes/sun/font/XRGlyphCache.java
Print this page
@@ -188,24 +188,27 @@
ArrayList<XRGlyphCacheEntry> grayGlyphs = null;
for (XRGlyphCacheEntry cacheEntry : glyphList) {
if (cacheEntry.isGrayscale(containsLCDGlyphs)) {
if (grayGlyphs == null) {
- grayGlyphs = new ArrayList<XRGlyphCacheEntry>(glyphList.size());
+ grayGlyphs = new ArrayList<>(glyphList.size());
}
cacheEntry.setGlyphSet(grayGlyphSet);
grayGlyphs.add(cacheEntry);
} else {
if (lcdGlyphs == null) {
- lcdGlyphs = new ArrayList<XRGlyphCacheEntry>(glyphList.size());
+ lcdGlyphs = new ArrayList<>(glyphList.size());
}
cacheEntry.setGlyphSet(lcdGlyphSet);
lcdGlyphs.add(cacheEntry);
}
}
-
- return new List[] { grayGlyphs, lcdGlyphs };
+ // Arrays and generics don't play well together
+ @SuppressWarnings({"unchecked", "rawtypes"})
+ List<XRGlyphCacheEntry>[] tmp =
+ (List<XRGlyphCacheEntry>[]) (new List[] { grayGlyphs, lcdGlyphs });
+ return tmp;
}
/**
* Copies the glyph-images into a continous buffer, required for uploading.
*/