Bug 182402 [JFace] FontRegistry.defaultFontRecord() leaks a Font
FontRegistry.defaultFontRecord(), creates a Font, uses that Font's FontData to create a FontRecord (which creates a new Font with the FontData), but never disposes the original Font once the FontRecord has been created.
bundles/org.eclipse.jface/src/org/eclipse/jface/resource/FontRegistry.java
* </p>
     *
     * @param symbolicName the symbolic font name
     * @param fontData an Array of FontData
     */
    public void put(String symbolicName, FontData[] fontData) {
        put(symbolicName, fontData, true);
    }
    /**
     * Adds (or replaces) a font to this font registry under the given
     * symbolic name.
     * <p>
     * A property change event is reported whenever the mapping from
     * a symbolic name to a font changes. The source of the event is
     * this registry; the property name is the symbolic font name.
     * </p>
     *
     * @param symbolicName the symbolic font name
     * @param fontData an Array of FontData
     * @param update - fire a font mapping changed if true. False
     * 	if this method is called from the get method as no setting
     *  has changed.
     */
    private void put(String symbolicName, FontData[] fontData, boolean update) {
        Assert.isNotNull(symbolicName);
        Assert.isNotNull(fontData);
        FontData[] existing = (FontData[]) stringToFontData.get(symbolicName);
        if (Arrays.equals(existing, fontData)) {
			return;
		}