X-Git-Url: http://git.megacz.com/?p=org.ibex.core.git;a=blobdiff_plain;f=upstream%2Ffreetype-2.1.4%2Fpatches%2Fft-nostdio.patch;fp=upstream%2Ffreetype-2.1.4%2Fpatches%2Fft-nostdio.patch;h=6098c506ad66a073252b2bbfcf2e77e43ee6e14e;hp=0000000000000000000000000000000000000000;hb=12c071b8655bc93d0bc80ed755e62aa2a44837b3;hpb=baed1480fbb1d933f73f31a0fcf10b07688aacaf diff --git a/upstream/freetype-2.1.4/patches/ft-nostdio.patch b/upstream/freetype-2.1.4/patches/ft-nostdio.patch new file mode 100644 index 0000000..6098c50 --- /dev/null +++ b/upstream/freetype-2.1.4/patches/ft-nostdio.patch @@ -0,0 +1,83 @@ +--- src/base/ftsystem.c.origf Mon Dec 29 05:45:54 2003 ++++ src/base/ftsystem.c Mon Dec 29 05:46:08 2003 +@@ -32,7 +32,8 @@ + #include FT_ERRORS_H + #include FT_TYPES_H + +-#include ++#include ++#include + #include + + +@@ -151,7 +152,7 @@ + + /* We use the macro STREAM_FILE for convenience to extract the */ + /* system-specific stream handle from a given FreeType stream object */ +-#define STREAM_FILE( stream ) ( (FILE*)stream->descriptor.pointer ) ++#define STREAM_FD( stream ) ( (int)stream->descriptor.value ) + + + /*************************************************************************/ +@@ -168,7 +169,7 @@ + FT_CALLBACK_DEF( void ) + ft_ansi_stream_close( FT_Stream stream ) + { +- fclose( STREAM_FILE( stream ) ); ++ close(STREAM_FD(stream)); + + stream->descriptor.pointer = NULL; + stream->size = 0; +@@ -202,14 +203,14 @@ + unsigned char* buffer, + unsigned long count ) + { +- FILE* file; ++ int fd; + + +- file = STREAM_FILE( stream ); ++ fd = STREAM_FD( stream ); + +- fseek( file, offset, SEEK_SET ); ++ if(lseek( fd, offset, SEEK_SET ) < 0) return 0; + +- return (unsigned long)fread( buffer, 1, count, file ); ++ return (unsigned long) read(fd,buffer,count); + } + + +@@ -219,14 +220,14 @@ + FT_Stream_Open( FT_Stream stream, + const char* filepathname ) + { +- FILE* file; ++ int fd,n; + + + if ( !stream ) + return FT_Err_Invalid_Stream_Handle; + +- file = fopen( filepathname, "rb" ); +- if ( !file ) ++ fd = open( filepathname, O_RDONLY); ++ if (fd < 0) + { + FT_ERROR(( "FT_Stream_Open:" )); + FT_ERROR(( " could not open `%s'\n", filepathname )); +@@ -234,11 +235,11 @@ + return FT_Err_Cannot_Open_Resource; + } + +- fseek( file, 0, SEEK_END ); +- stream->size = ftell( file ); +- fseek( file, 0, SEEK_SET ); ++ n = lseek( fd, 0, SEEK_END ); ++ stream-> size = n < 0 ? 0 : n; ++ lseek( fd, 0, SEEK_SET ); + +- stream->descriptor.pointer = file; ++ stream->descriptor.value = fd; + stream->pathname.pointer = (char*)filepathname; + stream->pos = 0; +