-
Bug
-
Resolution: Fixed
-
P3
-
1.2.0
-
None
-
1.2beta2
-
x86
-
windows_95
-
Not verified
Name: sg39081 Date: 09/22/97
When using appletviewer my application crashes alot.
It doesn't crash when running it without appletviewer
It crashes with deep trace shouting about exceptions in java2d and font-related routines,
seemingly because a lot of "old" awt is now also built on top of java2d, since my source
contains only JDK 1.0.2 code, and definitely no new Java2D stuff.
There are no such problems in earlier JDK's: my code is downward compatible with JDK 1.02 and 1.1.
I also did some further experiments that show that are a few subtleties
associated with my crashes.
For one thing, even the job that sometimes crashes, does not
always crash (but often), nor does it give the same crash traces,
as you will see below. Perhaps more importantly, I (so far) ONLY
got crashes when starting "appletviewer sheri.html" containing
<Center>
<applet code='The_vOICe.class' name='JavOICe' width=640 height=525>
<param name="NFRAME" value= "1">
<param name="M" value= "64">
<param name="N" value= "64">
<param name="FL" value= "500">
<param name="FH" value= "5000">
<param name="FS" value= "22050">
<param name="T" value= "1.05">
<param name="REFRESH" value= "20.0">
<param name="D" value= "1">
<param name="WINDOW" value= "2">
<param name="BINOC" value= "0">
<param name="BINAU" value= "1">
<param name="CLICK" value= "1">
<param name="CIW" value= "0.2">
<param name="DSI" value= "2">
<param name="URL" value= "file:c:\html\voice\arti1.gif">
</applet>
</Center>
(with the arti1.gif also available from my web site)
using a "Shortcut to MS-DOS Program" on my desktop
(with all memory options set to "Auto"). In spite of
trying many times, I did *NOT* get any crashes when
starting from an MS-DOS prompt!!!
This, and the variety of crashes I got from the
icon-start, suggests to me that it might also a
memory management bug rather than a Java bug.
I may be wrong, because I cannot look into your
software machinery, but one could waste a lot of
time if the bug is perhaps not in your java2d or font
Java code but rather in the overall memory manager
or in your Java interface to Windows'95, doing weird
things if memory gets tight.
Now some of the crash traces you requested, all for
the same job STARTED AS A DESKTOP ICON, with, on
my machine C:\JAVA\bin\appletviewer.exe sheri.html
as the "Cmd line:" in the "Program" tab, and the
"Working:" set to my HTML and .gif source directory.
One crash:
=========
You are running The vOICe v1.01 applet in Java version 1.2_EA2
from Sun Microsystems Inc. on Windows 95
[Re]initialized parameter settings:
NFRAME=1 M=64 N=64 FL=500.0 FH=5000.0 FS=22050 T=1.05 REFRESH=20.0 D=1
WINDOW=2 BINOC=0 BINAU=1 CLICK=1 GRID=1 CIW=0.2 DSI=2.0
URL=http://ourworld.compuserve.com/homepages/Peter_Meijer/arti_car.gif
java.io.EOFException
at java.io.RandomAccessFile.readFully(RandomAccessFile.java:226)
at java.io.RandomAccessFile.readFully(RandomAccessFile.java:204)
at sun.java2d.SfntAccess.getFontTable(SfntAccess.java:103)
at sun.java2d.SfntAccess.getGlyph(SfntAccess.java:259)
at sun.java2d.SfntAccess.unpackGlyph(SfntAccess.java:343)
at sun.java2d.SfntAccess.createOutline(SfntAccess.java:287)
at sun.java2d.TTFontObject.createOutline(TTFontObject.java:51)
at java.awt.Font.getOutline(Font.java:689)
at sun.java2d.SunGraphics2D.renderingPipeText(SunGraphics2D.java:1556)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:1029)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:1023)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:395)
at The_vOICe.paint(The_vOICe.java)
at The_vOICe.start(The_vOICe.java)
at sun.applet.AppletPanel.run(AppletPanel.java:301)
at java.lang.Thread.run(Thread.java:471)
Another crash:
=============
You are running The vOICe v1.01 applet in Java version 1.2_EA2
from Sun Microsystems Inc. on Windows 95
[Re]initialized parameter settings:
NFRAME=1 M=64 N=64 FL=500.0 FH=5000.0 FS=22050 T=1.05 REFRESH=20.0 D=1
WINDOW=2 BINOC=0 BINAU=1 CLICK=1 GRID=1 CIW=0.2 DSI=2.0
URL=http://ourworld.compuserve.com/homepages/Peter_Meijer/arti_car.gif
java.lang.ArrayIndexOutOfBoundsException: 197290
at java.lang.Character.<clinit>(Character.java:0)
at sun.java2d.SfntAccess$SfntGlyphData.unpackGlyph(SfntAccess.java:606)
at sun.java2d.SfntAccess.unpackGlyph(SfntAccess.java:351)
at sun.java2d.SfntAccess.createOutline(SfntAccess.java:287)
at sun.java2d.TTFontObject.createOutline(TTFontObject.java:51)
at java.awt.Font.getOutline(Font.java:689)
at sun.java2d.SunGraphics2D.renderingPipeText(SunGraphics2D.java:1556)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:1029)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:1023)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:395)
at The_vOICe.paint(The_vOICe.java)
at The_vOICe.start(The_vOICe.java)
at sun.applet.AppletPanel.run(AppletPanel.java:301)
at java.lang.Thread.run(Thread.java:471)
And yet another crash:
=====================
You are running The vOICe v1.01 applet in Java version 1.2_EA2
from Sun Microsystems Inc. on Windows 95
[Re]initialized parameter settings:
NFRAME=1 M=64 N=64 FL=500.0 FH=5000.0 FS=22050 T=1.05 REFRESH=20.0 D=1
WINDOW=2 BINOC=0 BINAU=1 CLICK=1 GRID=1 CIW=0.2 DSI=2.0
URL=http://ourworld.compuserve.com/homepages/Peter_Meijer/arti_car.gif
Loading from file:c:\html\voice\arti1.gif...
java.lang.ArrayIndexOutOfBoundsException: 5309098
at java.lang.Character.<clinit>(Character.java:0)
at sun.java2d.SfntAccess$SfntGlyphData.unpackGlyph(SfntAccess.java:606)
at sun.java2d.SfntAccess.unpackGlyph(SfntAccess.java:351)
at sun.java2d.SfntAccess.createOutline(SfntAccess.java:287)
at sun.java2d.TTFontObject.createOutline(TTFontObject.java:51)
at java.awt.Font.getOutline(Font.java:689)
at sun.java2d.SunGraphics2D.renderingPipeText(SunGraphics2D.java:1556)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:1029)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:1023)
at sun.java2d.SunGraphics2D.drawString(SunGraphics2D.java:395)
at The_vOICe.paint(The_vOICe.java)
at The_vOICe.start(The_vOICe.java)
at sun.applet.AppletPanel.run(AppletPanel.java:301)
at java.lang.Thread.run(Thread.java:471)
Time for loading image: 4.5 s
======================================================================