bugThe FreeType Project - Bugs: bug #26119, crash in TT_Load_Simple_Glyph -...

 
 

bug #26119: crash in TT_Load_Simple_Glyph - gloader->current.outline.contours is null

Submitted by:  Keith Pirkl <kpirkl>
Submitted on:  Wed 08 Apr 2009 04:29:47 PM UTC  
 
Severity: 3 - NormalItem Group: Crash
Status: Works For MePrivacy: Public
Assigned to: Werner LEMBERG <wl>Open/Closed: Closed
Planned Release: None

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Fri 09 Jul 2010 02:33:32 PM UTC, comment #3:

Meanwhile, a whole bunch of crashes has been fixed. Since you've never provided more details, I'm closing this report.

Werner LEMBERG <wl>
Project AdministratorIn charge of this item.
Wed 08 Apr 2009 10:18:30 PM UTC, comment #2:

Thanks. I can't reproduce it with the current git code of
FreeType. valgrind reports not a single problem.

Please test the git version. If it still fails I need more
details -- do you uses a special configuration, for example?

Werner LEMBERG <wl>
Project AdministratorIn charge of this item.
Wed 08 Apr 2009 08:16:44 PM UTC, comment #1:

Please send me the the embedded font privately for further investigation.

Werner LEMBERG <wl>
Project AdministratorIn charge of this item.
Wed 08 Apr 2009 04:29:47 PM UTC, original submission:

our application is crashing on a Times New Roman TTF font file which was embedded in a PDF file. ftview also crashes on this file. Here is the back trace under windows, its very reproduceable

> apptest.exe!TT_Load_Simple_Glyph(TT_LoaderRec_ * load=0x0012a3b0) Line 258 C

apptest.exe!load_truetype_glyph(TT_LoaderRec_ * loader=0x0012a3b0, unsigned int glyph_index=0x00000052, unsigned int recurse_count=0x00000000) Line 1293 + 0xd bytes C
apptest.exe!TT_Load_Glyph(TT_SizeRec_ * size=0x0121aec0, FT_GlyphSlotRec_ * glyph=0x0121b520, unsigned int glyph_index=0x00000052, int load_flags=0x0000000b) Line 1930 + 0x12 bytes C
apptest.exe!Load_Glyph(FT_GlyphSlotRec_ * ttslot=0x0121b520, FT_SizeRec_ * ttsize=0x0121aec0, unsigned int glyph_index=0x00000052, int load_flags=0x0000000b) Line 269 + 0x15 bytes C
apptest.exe!FT_Load_Glyph(FT_FaceRec_ * face=0x0121b5f0, unsigned int glyph_index=0x00000052, int load_flags=0x0000000b) Line 649 + 0x1c bytes C
apptest.exe!af_latin_metrics_init_widths(AF_LatinMetricsRec_ * metrics=0x0121a350, FT_FaceRec_ * face=0x0121b5f0, unsigned long charcode=0x0000006f) Line 62 + 0x12 bytes C
apptest.exe!af_latin_metrics_init(AF_LatinMetricsRec_ * metrics=0x0121a350, FT_FaceRec_ * face=0x0121b5f0) Line 427 + 0xf bytes C
apptest.exe!af_face_globals_get_metrics(AF_FaceGlobalsRec_ * globals=0x023d7580, unsigned int gindex=0x00000014, unsigned int options=0x00000000, AF_ScriptMetricsRec_ * * ametrics=0x0012a964) Line 268 + 0x10 bytes C
apptest.exe!af_loader_load_glyph(AF_LoaderRec_ * loader=0x011e10a4, FT_FaceRec_ * face=0x0121b5f0, unsigned int gindex=0x00000014, unsigned int load_flags=0x00000000) Line 505 + 0x18 bytes C
apptest.exe!af_autofitter_load_glyph(FT_AutofitterRec_ * module=0x011e1090, FT_GlyphSlotRec_ * slot=0x0121b520, FT_SizeRec_ * size=0x0121aec0, unsigned int glyph_index=0x00000014, int load_flags=0x00000000) Line 65 + 0x1b bytes C
apptest.exe!FT_Load_Glyph(FT_FaceRec_ * face=0x0121b5f0, unsigned int glyph_index=0x00000014, int load_flags=0x00000000) Line 642 + 0x1d bytes C
apptest.exe!SplashFTFont::makeGlyph(int c=0x00000031, int xFrac=0x00000000, int yFrac=0x00000000, SplashGlyphBitmap * bitmap=0x0012aaf4) Line 195 + 0x1e bytes C++
apptest.exe!SplashFont::getGlyph(int c=0x00000031, int xFrac=0x00000000, int yFrac=0x00000000, SplashGlyphBitmap * bitmap=0x0012ac04) Line 137 + 0x1d bytes C++
apptest.exe!SplashFTFont::getGlyph(int c=0x00000031, int xFrac=0x00000000, int yFrac=0x00000002, SplashGlyphBitmap * bitmap=0x0012ac04) Line 152 C++
apptest.exe!Splash::fillChar(double x=128.83880000000002, double y=5.5095000000000001, int c=0x00000031, SplashFont * font=0x01218d70) Line 2070 + 0x1d bytes C++
apptest.exe!SplashOutputDev::drawChar(GfxState * state=0x011dfbe0, double x=128.83880000000002, double y=5.5095000000000001, double dx=4.0000000000000000, double dy=0.00000000000000000, double originX=0.00000000000000000, double originY=0.00000000000000000, unsigned int code=0x00000031, int nBytes=0x00000001, unsigned int * u=0x0012aee8, int uLen=0x00000001) Line 1598 C++

Interstingly enough, the code to af_latin_metrics_init_widths is looking for the 'o' character. I opened the font file in FontLab4 and that character is not defined.

Help appreciated, if you want more trace information or need the ttf file please email me, I would be happy to supply it.

Keith

Keith Pirkl <kpirkl>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by wl (Posted a comment)
  • -unavailable- added by kpirkl (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 4 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Fri 09 Jul 2010 02:33:32 PM UTCwlStatusNeed Info=>Works For Me
      Open/ClosedOpen=>Closed
    Wed 08 Apr 2009 08:16:44 PM UTCwlStatusNone=>Need Info
      Assigned toNone=>wl

    Back to the top


    Powered by Savane 3.1-cleanup1