[OpenJDK 2D-Dev] JVM Crash: printing character \u0DDD in Swing app
Patrick Wright
pdoubleya at gmail.com
Thu Dec 4 19:22:19 UTC 2008
Thanks for the update, Phil. The actual glyph wasn't that important to
me--this came up when trying to render tables of glyphs for users
looking for glyph coverage in various fonts. It would be nice to see
it fixed, it's a particularly nasty crash, IMO.
Regards
Patrick
On Thu, Dec 4, 2008 at 7:46 PM, Phil Race <Phil.Race at sun.com> wrote:
> I reproduced this on JDK 1.6 update 10. The crash is in the ICU layout
> library
> which is the same in JDk7 and OpenJDk etc. Layout is invoked because this is
> an Indic language (Sinhalese) character.
>
> I'm not sure what's going on. I don't think its specific to Ubuntu, although
> I didn't see a crash on anything other than Linux, nor do I think its
> specific to any particular font. I think its in the Indic character
> processing. I'll forward the test case to the ICU layout maintainer.
>
> -phil.
>
> Patrick Wright wrote:
>>
>> Hi
>>
>> First--if necessary, am glad to file a bug for this, but wanted to
>> check and see if there was something I'm missing.
>>
>> In trying to render a table of characters using their Unicode
>> identifiers, I found that the character \u0DDD crashes my JVM as soon
>> as it is rendered to a Swing component. I'm not particularly
>> interested in that character--I am just trying to print out different
>> characters in different fonts to easily track which glyphs are
>> available per font. I found this by accident. I'm writing to this list
>> as I suspect (but don't know) that it may be an issue with the font
>> system.
>>
>> java -version
>> java version "1.6.0_10"
>> Java(TM) SE Runtime Environment (build 1.6.0_10-b33)
>> Java HotSpot(TM) Client VM (build 11.0-b15, mixed mode, sharing)
>>
>> Ubuntu 8.10
>> uname -r
>> 2.6.27-7-generic
>>
>> Small app that shows the problem:
>> import javax.swing.*;
>> import javax.swing.border.LineBorder;
>> import java.awt.*;
>> import java.awt.event.ActionEvent;
>>
>> public class TestChar {
>> public static void main(String[] args) {
>> SwingUtilities.invokeLater(new Runnable() {
>> public void run() {
>> new TestChar().run();
>> }
>> });
>> }
>>
>> private void run() {
>> JFrame frame = new JFrame("Test Character");
>> frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
>> JPanel panel = new JPanel();
>> final JLabel label = new JLabel("(empty)");
>> label.setSize(400, 100);
>> label.setBorder(new LineBorder(Color.black));
>> JButton button = new JButton("Set Char x0DDD");
>> button.addActionListener(new AbstractAction() {
>> public void actionPerformed(ActionEvent actionEvent) {
>> label.setText(Character.toString('\u0DDD'));
>> }
>> });
>> panel.add(button);
>> panel.add(label);
>>
>> frame.getContentPane().add(panel);
>> frame.pack();
>> frame.setVisible(true);
>> }
>> }
>>
>> Run this, then click the button. On my Ubuntu system, clicking the
>> button causes an immediate crash of the VM. Have also tested on OS X
>> java -version
>> java version "1.6.0_07"
>> Java(TM) SE Runtime Environment (build 1.6.0_07-b06-153)
>> Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_07-b06-57, mixed mode)
>>
>> and the VM _did not crash_.
>>
>> Output in the Ubuntu console following the crash is attached.
>>
>> If I should just file a bug for this, please let me know.
>>
>> Thanks!
>> Patrick
>>
>
More information about the 2d-dev
mailing list