Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 4755211
Votes 0
Synopsis Java2D font scaler has memory alignment bug in TrueType hinting code.
Category java:classes_2d
Reported Against 1.4 , merlin-beta
Release Fixed 1.4.1_03
State 10-Fix Delivered, bug
Priority: 3-Medium
Related Bugs 4390699 , 4482430
Submit Date 29-SEP-2002
Description
This is once of the causes of bug 
4482430: Unexpected exception from NativeFontWrapper.registerFonts
Several fonts we have found trigger a specific problem in the rasteriser.
Work Around
N/A
Evaluation
In the TT hinting code a buffer is allocated sufficient to hold several
arrays of data which represent information about points and contours of
a glyph outline. The arrays hold data of 1,2 and 4 byte quantities.

Unfortunately the number of byte needed was calculated without any
regard for address alignment requirements, and in particular
an array of 4 byte data was right after an array of 1 byte data.
Thus it was necessary to add the needed padding for this case.
The code is inherently vulnerable to such things but it was sufficient
to fix this one case.
The structure is fnt_ElementType defined in Fnt.c
GlyphOutline.c is where the storage is calculated (ComputeElementSizes)
and  SetElementPointers is the function which sets the pointers to locations
within a buffer allocated to hold that amount of storage.

 xxxxx@xxxxx  2002-09-29
============================
Comments
  
  Include a link with my name & email   


PLEASE NOTE: JDK6 is formerly known as Project Mustang