Bug 56973 [Themes] FontRegistry.bestDataArray() chops off all but the first "good" font
M8 The font registry is not making use of the motif ability to have multiple FontData objects in a font because bestDataArray() is using only the first good font.
bundles/org.eclipse.jface/src/org/eclipse/jface/resource/FontRegistry.java
* @see org.eclipse.jface.resource.ResourceRegistry#getKeySet()
     */
    public Set getKeySet() {
        return Collections.unmodifiableSet(stringToFontData.keySet());
    }
    /* (non-Javadoc)
     * @see org.eclipse.jface.resource.ResourceRegistry#hasValueFor(java.lang.String)
     */
    public boolean hasValueFor(String fontKey) {
        return stringToFontData.containsKey(fontKey);
    }
    /* (non-Javadoc)
     * @see org.eclipse.jface.resource.ResourceRegistry#clearCaches()
     */
    protected void clearCaches() {
        Iterator iterator = stringToFontRecord.values().iterator();
        while (iterator.hasNext()) {
            Object next = iterator.next();
            ((FontRecord) next).dispose();
        }
        disposeFonts(staleFonts.iterator());
        stringToFontRecord.clear();
        staleFonts.clear();
    }
    /**
     * Dispose of all of the fonts in this iterator.
     * @param Iterator over Collection of Font
     */
    private void disposeFonts(Iterator iterator) {
        while (iterator.hasNext()) {