Ajuste de texto extraño con texto con estilo en JTextPane con Java 7

Tengo dos editores diferentes que usan JTextPane con errores extraños en Java 7 que no ocurrieron con las versiones anteriores de JVM. Sucede con líneas largas que contienen texto o componentes con estilo.

Aquí hay un ejemplo que demuestra este error. En este ejemplo, el estilo predeterminado se aplica a todo el texto cada vez que se inserta un carácter. Lo probé con el JDK 1.7.0_04.

import java.awt.BorderLayout;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.text.*;

public class BugWrapJava7 extends JFrame {

    JTextPane jtp;
    StyledDocument doc;

    public BugWrapJava7() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setLayout(new BorderLayout());
        jtp = new JTextPane();
        add(jtp, BorderLayout.CENTER);
        jtp.setText("\ntype some text in the above empty line and check the wrapping behavior");
        doc = jtp.getStyledDocument();
        doc.addDocumentListener(new DocumentListener() {
            public void insertUpdate(DocumentEvent e) {
                insert();
            }
            public void removeUpdate(DocumentEvent e) {
            }
            public void changedUpdate(DocumentEvent e) {
            }
        });
        setSize(200, 200);
        setVisible(true);
    }
    public void insert() {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                Style defaultStyle = jtp.getStyle(StyleContext.DEFAULT_STYLE);
                doc.setCharacterAttributes(0, doc.getLength(), defaultStyle, false);
            }
        });
    }
    public static void main(String[] args) {
        new BugWrapJava7();
    }
}

Mi pregunta es: ¿hay algún error en mi código o es un nuevo error introducido en Java 7? Y si se trata de un nuevo error de JVM, ¿hay alguna solución?

Podría estar relacionado conpregunta 8666727, pero el problema aquí radica en el ajuste incorrecto en lugar de la apariencia de una barra de desplazamiento.

Respuestas a la pregunta(2)

Su respuesta a la pregunta