I have managed to create a standalone linux app that builds using the same 
freetype library files and should reproduce the error, however in this case, 
FT_New_Memory_Face succeeds, but in the Android it fails (despite my checks 
that the input file integrity and size is maintained.) So unfortunately my 
standalone app will not be useful afterall.

From: [email protected]
To: [email protected]
CC: [email protected]
Subject: RE: [ft-devel] FT_New_Memory_Face crashes
Date: Wed, 7 Sep 2011 12:02:19 -0700








Thanks for your reply. I am still trying to get a successful Makefile going so 
I have not been able to test this standalone app yet, however in case it helps, 
I have attached the code that should provide the crash in the meanwhile. The 
main program is in Standalone.cpp and crashes within FT_New_Memory_Face. I have 
also provided a sample ttf and the freetype library that I am using with 
Android (though I have added various 'printfs' for debugging).  

Thank-you
From: [email protected]
Date: Wed, 7 Sep 2011 13:06:36 -0400
Subject: Re: [ft-devel] FT_New_Memory_Face crashes
To: [email protected]
CC: [email protected]

It should be possible to create a self standing example that will compile on a 
Linux box. It might not have to be fully equivalent as long as it fails in the 
same way and aids in debugging

Chris

On Sep 7, 2011, at 12:23 PM, Louis Desjardins <[email protected]> wrote:



I apologize, I made a copy\paste error when providing the sample, I have 
corrected it below as they are in fact the same buffers in the code I'm 
running. 


Unfortunately I cannot provide a complete standalone sample as I am working in 
the Android NDK.

LD
From: [email protected]

To: [email protected]
Date: Wed, 7 Sep 2011 03:47:26 -0400

Subject: RE: [ft-devel] FT_New_Memory_Face crashes



















In the code sample, FT_NEW_MEMORY_Face()
is passed a different buffer from the one created by LoadFile().

 









From:
[email protected]
[mailto:[email protected]] On Behalf Of 
Louis Desjardins


Sent: 07 September 2011 00:13

To: [email protected]

Subject: [ft-devel]
FT_New_Memory_Face crashes



 





I have loaded an "arial.ttf" file (taken from
my /Windows/Fonts folder) into memory, however passing this into 
FT_New_Memory_Face
crashes (I have also tried other ttf files, and this function still crashes).
Any clues as to what I might be doing wrong? Note that I am using Freetype with
the Android NDK, so it is difficult to debug, however I find that eventually,
the crash occurs within:



FT_New_Memory_Face ->
FT_Open_Face -> FT_Stream_ReadLong -> crashes at:



if
( p )


{


       result = FT_NEXT_LONG( p );
//crashes here, in file ftstream.c, method FT_Stream_ReadLong





}




And below is my code:

unsigned char *fontBuffer = LoadFile("arial.ttf");
zip_uint64_t fSize = GetFileSize("arial.ttf"); // I checked this, and it 
returns the correct size
FT_Library  library;FT_Face     face; int error = FT_Init_FreeType( &library ); 
// I checked this, this step succeeds
if( error != 0 )    printf("FT_Init_FreeType failed");
 error = FT_New_Memory_Face( library,                            
(FT_Byte*)fontBuffer,
                            fSize,                  
                            0,                      
                            &face );




                                                                                
  
_______________________________________________
Freetype-devel mailing list
[email protected]

https://lists.nongnu.org/mailman/listinfo/freetype-devel
                                                                                
  
_______________________________________________
Freetype-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/freetype-devel

Reply via email to