From owner-freebsd-ports-bugs@FreeBSD.ORG Thu Apr 5 14:30:06 2007 Return-Path: X-Original-To: freebsd-ports-bugs@hub.freebsd.org Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5D29E16A407 for ; Thu, 5 Apr 2007 14:30:06 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 3ED3913C48C for ; Thu, 5 Apr 2007 14:30:06 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l35EU6C4020874 for ; Thu, 5 Apr 2007 14:30:06 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l35EU6Ls020873; Thu, 5 Apr 2007 14:30:06 GMT (envelope-from gnats) Resent-Date: Thu, 5 Apr 2007 14:30:06 GMT Resent-Message-Id: <200704051430.l35EU6Ls020873@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, chinsan Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 85C3D16A403 for ; Thu, 5 Apr 2007 14:27:38 +0000 (UTC) (envelope-from chinsan@chinsan.twbbs.org) Received: from chinsan.twbbs.org (220-132-119-51.HINET-IP.hinet.net [220.132.119.51]) by mx1.freebsd.org (Postfix) with ESMTP id E8CA713C43E for ; Thu, 5 Apr 2007 14:27:36 +0000 (UTC) (envelope-from chinsan@chinsan.twbbs.org) Received: by chinsan.twbbs.org (Postfix, from userid 1001) id 4487511483; Thu, 5 Apr 2007 22:27:47 +0800 (CST) Message-Id: <20070405142747.4487511483@chinsan.twbbs.org> Date: Thu, 5 Apr 2007 22:27:47 +0800 (CST) From: chinsan To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: gnome@FreeBSD.org Subject: ports/111272: [PATCH] print/freetype2: update to 2.3.3 X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 05 Apr 2007 14:30:06 -0000 >Number: 111272 >Category: ports >Synopsis: [PATCH] print/freetype2: update to 2.3.3 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Thu Apr 05 14:30:05 GMT 2007 >Closed-Date: >Last-Modified: >Originator: chinsan >Release: FreeBSD 6.2-STABLE i386 >Organization: Taiwan >Environment: System: FreeBSD chinsan.twbbs.org 6.2-STABLE FreeBSD 6.2-STABLE #6: Mon Feb 5 23:22:25 CST >Description: - Update to 2.3.3 Added file(s): - files/patch-builds-uni-detect.mk Removed file(s): - files/patch-aa - files/patch-src_pcf_pcfdrivr.c - files/patch-src_pcf_pcfread.c Port maintainer (gnome@FreeBSD.org) is cc'd. Generated with FreeBSD Port Tools 0.77 >How-To-Repeat: >Fix: --- freetype2-2.3.3.patch begins here --- diff -ruN --exclude=CVS /usr/ports/print/freetype2/Makefile /usr/home/chinsan/project/freetype2/Makefile --- /usr/ports/print/freetype2/Makefile Mon Jan 29 18:50:56 2007 +++ /usr/home/chinsan/project/freetype2/Makefile Thu Apr 5 21:56:36 2007 @@ -6,8 +6,7 @@ # PORTNAME= freetype2 -PORTVERSION= 2.2.1 -PORTREVISION= 1 +PORTVERSION= 2.3.3 CATEGORIES= print MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:S,%SUBDIR%,freetype,} \ http://sunsite.cnlab-switch.ch/ftp/mirror/freetype/%SUBDIR%/ \ diff -ruN --exclude=CVS /usr/ports/print/freetype2/distinfo /usr/home/chinsan/project/freetype2/distinfo --- /usr/ports/print/freetype2/distinfo Mon Oct 30 03:26:05 2006 +++ /usr/home/chinsan/project/freetype2/distinfo Thu Apr 5 18:48:03 2007 @@ -1,3 +1,3 @@ -MD5 (freetype-2.2.1.tar.bz2) = 5b2f827082c544392a7701f7423f0781 -SHA256 (freetype-2.2.1.tar.bz2) = 0e8eb40392752b306d3a3de21f9fa479d53c17bd774b8051771cb258e162e006 -SIZE (freetype-2.2.1.tar.bz2) = 1212258 +MD5 (freetype-2.3.3.tar.bz2) = c0367b4059f672789b7a41e65f7a4b4a +SHA256 (freetype-2.3.3.tar.bz2) = 6ce667f4beafed9fb15895ac5dbe81504febfd8e32cf94d85dfa31c21eee2f7b +SIZE (freetype-2.3.3.tar.bz2) = 1253262 diff -ruN --exclude=CVS /usr/ports/print/freetype2/files/patch-aa /usr/home/chinsan/project/freetype2/files/patch-aa --- /usr/ports/print/freetype2/files/patch-aa Mon Oct 30 03:26:05 2006 +++ /usr/home/chinsan/project/freetype2/files/patch-aa Thu Jan 1 08:00:00 1970 @@ -1,14 +0,0 @@ ---- builds/unix/detect.mk.orig Tue Aug 22 17:53:59 2006 -+++ builds/unix/detect.mk Tue Aug 22 17:54:09 2006 -@@ -78,9 +78,9 @@ ifeq ($(PLATFORM),unix) - ifdef must_configure - ifneq ($(have_Makefile),) - # we are building FT2 not in the src tree -- $(TOP_DIR)/builds/unix/configure $(CFG) -+# $(TOP_DIR)/builds/unix/configure $(CFG) - else -- cd builds/unix; ./configure $(CFG) -+# cd builds/unix; ./configure $(CFG) - endif - endif - diff -ruN --exclude=CVS /usr/ports/print/freetype2/files/patch-builds-uni-detect.mk /usr/home/chinsan/project/freetype2/files/patch-builds-uni-detect.mk --- /usr/ports/print/freetype2/files/patch-builds-uni-detect.mk Thu Jan 1 08:00:00 1970 +++ /usr/home/chinsan/project/freetype2/files/patch-builds-uni-detect.mk Mon Mar 12 20:33:33 2007 @@ -0,0 +1,14 @@ +--- builds/unix/detect.mk.orig Mon Mar 12 20:32:54 2007 ++++ builds/unix/detect.mk Mon Mar 12 20:32:54 2007 +@@ -79,9 +79,9 @@ + ifdef must_configure + ifneq ($(have_Makefile),) + # we are building FT2 not in the src tree +- $(TOP_DIR)/builds/unix/configure $(CFG) ++# $(TOP_DIR)/builds/unix/configure $(CFG) + else +- cd builds/unix; ./configure $(CFG) ++# cd builds/unix; ./configure $(CFG) + endif + endif + diff -ruN --exclude=CVS /usr/ports/print/freetype2/files/patch-src_pcf_pcfdrivr.c /usr/home/chinsan/project/freetype2/files/patch-src_pcf_pcfdrivr.c --- /usr/ports/print/freetype2/files/patch-src_pcf_pcfdrivr.c Sat Oct 14 16:35:44 2006 +++ /usr/home/chinsan/project/freetype2/files/patch-src_pcf_pcfdrivr.c Thu Jan 1 08:00:00 1970 @@ -1,50 +0,0 @@ ---- src/pcf/pcfdrivr.c.orig 2006-02-17 07:40:36.000000000 +0100 -+++ src/pcf/pcfdrivr.c -@@ -203,19 +203,23 @@ THE SOFTWARE. - - /* free properties */ - { -- PCF_Property prop = face->properties; -+ PCF_Property prop; - FT_Int i; - - -- for ( i = 0; i < face->nprops; i++ ) -+ if ( face->properties ) - { -- prop = &face->properties[i]; -+ for ( i = 0; i < face->nprops; i++ ) -+ { -+ prop = &face->properties[i]; - -- FT_FREE( prop->name ); -- if ( prop->isString ) -- FT_FREE( prop->value.atom ); -+ if ( prop ) { -+ FT_FREE( prop->name ); -+ if ( prop->isString ) -+ FT_FREE( prop->value.atom ); -+ } -+ } - } -- - FT_FREE( face->properties ); - } - -@@ -258,6 +262,8 @@ THE SOFTWARE. - FT_Error error2; - - -+ PCF_Face_Done( pcfface ); -+ - /* this didn't work, try gzip support! */ - error2 = FT_Stream_OpenGzip( &face->gzip_stream, stream ); - if ( FT_ERROR_BASE( error2 ) == FT_Err_Unimplemented_Feature ) -@@ -357,6 +363,7 @@ THE SOFTWARE. - - Fail: - FT_TRACE2(( "[not a valid PCF file]\n" )); -+ PCF_Face_Done( pcfface ); - error = PCF_Err_Unknown_File_Format; /* error */ - goto Exit; - } diff -ruN --exclude=CVS /usr/ports/print/freetype2/files/patch-src_pcf_pcfread.c /usr/home/chinsan/project/freetype2/files/patch-src_pcf_pcfread.c --- /usr/ports/print/freetype2/files/patch-src_pcf_pcfread.c Sat Oct 14 16:35:44 2006 +++ /usr/home/chinsan/project/freetype2/files/patch-src_pcf_pcfread.c Thu Jan 1 08:00:00 1970 @@ -1,455 +0,0 @@ ---- src/pcf/pcfread.c.orig 2006-01-23 17:35:18.000000000 +0100 -+++ src/pcf/pcfread.c -@@ -102,7 +102,8 @@ THE SOFTWARE. - return PCF_Err_Cannot_Open_Resource; - - if ( toc->version != PCF_FILE_VERSION || -- toc->count > FT_ARRAY_MAX( face->toc.tables ) ) -+ toc->count > FT_ARRAY_MAX( face->toc.tables ) || -+ toc->count == 0 ) - return PCF_Err_Invalid_File_Format; - - if ( FT_NEW_ARRAY( face->toc.tables, toc->count ) ) -@@ -116,6 +117,41 @@ THE SOFTWARE. - tables++; - } - -+ /* Sort tables and check for overlaps. Because they are almost */ -+ /* always ordered already, an in-place bubble sort with simultaneous */ -+ /* boundary checking seems appropriate. */ -+ tables = face->toc.tables; -+ -+ for ( n = 0; n < toc->count - 1; n++ ) -+ { -+ FT_UInt i, have_change; -+ -+ -+ have_change = 0; -+ -+ for ( i = 0; i < toc->count - 1 - n; i++ ) -+ { -+ PCF_TableRec tmp; -+ -+ -+ if ( tables[i].offset > tables[i + 1].offset ) -+ { -+ tmp = tables[i]; -+ tables[i] = tables[i + 1]; -+ tables[i + 1] = tmp; -+ -+ have_change = 1; -+ } -+ -+ if ( ( tables[i].size > tables[i + 1].offset ) || -+ ( tables[i].offset > tables[i + 1].offset - tables[i].size ) ) -+ return PCF_Err_Invalid_Offset; -+ } -+ -+ if ( !have_change ) -+ break; -+ } -+ - #if defined( FT_DEBUG_LEVEL_TRACE ) - - { -@@ -130,7 +166,8 @@ THE SOFTWARE. - tables = face->toc.tables; - for ( i = 0; i < toc->count; i++ ) - { -- for( j = 0; j < sizeof ( tableNames ) / sizeof ( tableNames[0] ); j++ ) -+ for ( j = 0; j < sizeof ( tableNames ) / sizeof ( tableNames[0] ); -+ j++ ) - if ( tables[i].type == (FT_UInt)( 1 << j ) ) - name = tableNames[j]; - -@@ -153,13 +190,15 @@ THE SOFTWARE. - } - - -+#define PCF_METRIC_SIZE 12 -+ - static - const FT_Frame_Field pcf_metric_header[] = - { - #undef FT_STRUCTURE - #define FT_STRUCTURE PCF_MetricRec - -- FT_FRAME_START( 12 ), -+ FT_FRAME_START( PCF_METRIC_SIZE ), - FT_FRAME_SHORT_LE( leftSideBearing ), - FT_FRAME_SHORT_LE( rightSideBearing ), - FT_FRAME_SHORT_LE( characterWidth ), -@@ -176,7 +215,7 @@ THE SOFTWARE. - #undef FT_STRUCTURE - #define FT_STRUCTURE PCF_MetricRec - -- FT_FRAME_START( 12 ), -+ FT_FRAME_START( PCF_METRIC_SIZE ), - FT_FRAME_SHORT( leftSideBearing ), - FT_FRAME_SHORT( rightSideBearing ), - FT_FRAME_SHORT( characterWidth ), -@@ -187,13 +226,15 @@ THE SOFTWARE. - }; - - -+#define PCF_COMPRESSED_METRIC_SIZE 5 -+ - static - const FT_Frame_Field pcf_compressed_metric_header[] = - { - #undef FT_STRUCTURE - #define FT_STRUCTURE PCF_Compressed_MetricRec - -- FT_FRAME_START( 5 ), -+ FT_FRAME_START( PCF_COMPRESSED_METRIC_SIZE ), - FT_FRAME_BYTE( leftSideBearing ), - FT_FRAME_BYTE( rightSideBearing ), - FT_FRAME_BYTE( characterWidth ), -@@ -221,7 +262,7 @@ THE SOFTWARE. - ? pcf_metric_msb_header - : pcf_metric_header; - -- /* the following sets 'error' but doesn't return in case of failure */ -+ /* the following sets `error' but doesn't return in case of failure */ - (void)FT_STREAM_READ_FIELDS( fields, metric ); - } - else -@@ -261,17 +302,19 @@ THE SOFTWARE. - for ( i = 0; i < ntables; i++ ) - if ( tables[i].type == type ) - { -- if ( stream->pos > tables[i].offset ) { -+ if ( stream->pos > tables[i].offset ) -+ { - error = PCF_Err_Invalid_Stream_Skip; - goto Fail; - } - -- if ( FT_STREAM_SKIP( tables[i].offset - stream->pos ) ) { -+ if ( FT_STREAM_SKIP( tables[i].offset - stream->pos ) ) -+ { - error = PCF_Err_Invalid_Stream_Skip; - goto Fail; - } - -- *asize = tables[i].size; /* unused - to be removed */ -+ *asize = tables[i].size; - *aformat = tables[i].format; - - return PCF_Err_Ok; -@@ -298,13 +341,15 @@ THE SOFTWARE. - } - - -+#define PCF_PROPERTY_SIZE 9 -+ - static - const FT_Frame_Field pcf_property_header[] = - { - #undef FT_STRUCTURE - #define FT_STRUCTURE PCF_ParsePropertyRec - -- FT_FRAME_START( 9 ), -+ FT_FRAME_START( PCF_PROPERTY_SIZE ), - FT_FRAME_LONG_LE( name ), - FT_FRAME_BYTE ( isString ), - FT_FRAME_LONG_LE( value ), -@@ -318,7 +363,7 @@ THE SOFTWARE. - #undef FT_STRUCTURE - #define FT_STRUCTURE PCF_ParsePropertyRec - -- FT_FRAME_START( 9 ), -+ FT_FRAME_START( PCF_PROPERTY_SIZE ), - FT_FRAME_LONG( name ), - FT_FRAME_BYTE( isString ), - FT_FRAME_LONG( value ), -@@ -353,8 +398,8 @@ THE SOFTWARE. - PCF_Face face ) - { - PCF_ParseProperty props = 0; -- PCF_Property properties = 0; -- FT_Int nprops, i; -+ PCF_Property properties; -+ FT_UInt nprops, i; - FT_ULong format, size; - FT_Error error; - FT_Memory memory = FT_FACE(face)->memory; -@@ -390,6 +435,15 @@ THE SOFTWARE. - - FT_TRACE4(( " nprop = %d\n", nprops )); - -+ /* rough estimate */ -+ if ( nprops > size / PCF_PROPERTY_SIZE ) -+ { -+ error = PCF_Err_Invalid_Table; -+ goto Bail; -+ } -+ -+ face->nprops = nprops; -+ - if ( FT_NEW_ARRAY( props, nprops ) ) - goto Bail; - -@@ -427,6 +481,13 @@ THE SOFTWARE. - - FT_TRACE4(( " string_size = %ld\n", string_size )); - -+ /* rough estimate */ -+ if ( string_size > size - nprops * PCF_PROPERTY_SIZE ) -+ { -+ error = PCF_Err_Invalid_Table; -+ goto Bail; -+ } -+ - if ( FT_NEW_ARRAY( strings, string_size ) ) - goto Bail; - -@@ -437,13 +498,24 @@ THE SOFTWARE. - if ( FT_NEW_ARRAY( properties, nprops ) ) - goto Bail; - -+ face->properties = properties; -+ - for ( i = 0; i < nprops; i++ ) - { -- /* XXX: make atom */ -+ FT_Long name_offset = props[i].name; -+ -+ -+ if ( ( name_offset < 0 ) || -+ ( (FT_ULong)name_offset > string_size ) ) -+ { -+ error = PCF_Err_Invalid_Offset; -+ goto Bail; -+ } -+ - if ( FT_NEW_ARRAY( properties[i].name, -- ft_strlen( strings + props[i].name ) + 1 ) ) -+ ft_strlen( strings + name_offset ) + 1 ) ) - goto Bail; -- ft_strcpy( properties[i].name, strings + props[i].name ); -+ ft_strcpy( properties[i].name, strings + name_offset ); - - FT_TRACE4(( " %s:", properties[i].name )); - -@@ -451,8 +523,18 @@ THE SOFTWARE. - - if ( props[i].isString ) - { -+ FT_Long value_offset = props[i].value; -+ -+ -+ if ( ( value_offset < 0 ) || -+ ( (FT_ULong)value_offset > string_size ) ) -+ { -+ error = PCF_Err_Invalid_Offset; -+ goto Bail; -+ } -+ - if ( FT_NEW_ARRAY( properties[i].value.atom, -- ft_strlen( strings + props[i].value ) + 1 ) ) -+ ft_strlen( strings + value_offset ) + 1 ) ) - goto Bail; - ft_strcpy( properties[i].value.atom, strings + props[i].value ); - -@@ -466,14 +548,8 @@ THE SOFTWARE. - } - } - -- face->properties = properties; -- face->nprops = nprops; -- -- FT_FREE( props ); -- FT_FREE( strings ); -- -- return PCF_Err_Ok; -- -+ error = PCF_Err_Ok; -+ - Bail: - FT_FREE( props ); - FT_FREE( strings ); -@@ -488,11 +564,9 @@ THE SOFTWARE. - { - FT_Error error = PCF_Err_Ok; - FT_Memory memory = FT_FACE(face)->memory; -- FT_ULong format = 0; -- FT_ULong size = 0; -+ FT_ULong format, size; - PCF_Metric metrics = 0; -- int i; -- int nmetrics = -1; -+ FT_ULong nmetrics, i; - - - error = pcf_seek_to_table_type( stream, -@@ -504,7 +578,8 @@ THE SOFTWARE. - if ( error ) - return error; - -- error = FT_READ_ULONG_LE( format ); -+ if ( FT_READ_ULONG_LE( format ) ) -+ goto Bail; - - if ( !PCF_FORMAT_MATCH( format, PCF_DEFAULT_FORMAT ) && - !PCF_FORMAT_MATCH( format, PCF_COMPRESSED_METRICS ) ) -@@ -524,16 +599,30 @@ THE SOFTWARE. - else - (void)FT_READ_USHORT_LE( nmetrics ); - } -- if ( error || nmetrics == -1 ) -+ if ( error ) - return PCF_Err_Invalid_File_Format; - - face->nmetrics = nmetrics; - -+ FT_TRACE4(( "pcf_get_metrics:\n" )); -+ -+ FT_TRACE4(( " number of metrics: %d\n", nmetrics )); -+ -+ /* rough estimate */ -+ if ( PCF_FORMAT_MATCH( format, PCF_DEFAULT_FORMAT ) ) -+ { -+ if ( nmetrics > size / PCF_METRIC_SIZE ) -+ return PCF_Err_Invalid_Table; -+ } -+ else -+ { -+ if ( nmetrics > size / PCF_COMPRESSED_METRIC_SIZE ) -+ return PCF_Err_Invalid_Table; -+ } -+ - if ( FT_NEW_ARRAY( face->metrics, nmetrics ) ) - return PCF_Err_Out_Of_Memory; - -- FT_TRACE4(( "pcf_get_metrics:\n" )); -- - metrics = face->metrics; - for ( i = 0; i < nmetrics; i++ ) - { -@@ -541,7 +630,7 @@ THE SOFTWARE. - - metrics[i].bits = 0; - -- FT_TRACE4(( " idx %d: width=%d, " -+ FT_TRACE5(( " idx %d: width=%d, " - "lsb=%d, rsb=%d, ascent=%d, descent=%d, swidth=%d\n", - i, - ( metrics + i )->characterWidth, -@@ -557,6 +646,8 @@ THE SOFTWARE. - - if ( error ) - FT_FREE( face->metrics ); -+ -+ Bail: - return error; - } - -@@ -597,14 +688,16 @@ THE SOFTWARE. - if ( !PCF_FORMAT_MATCH( format, PCF_DEFAULT_FORMAT ) ) - return PCF_Err_Invalid_File_Format; - -+ FT_TRACE4(( "pcf_get_bitmaps:\n" )); -+ -+ FT_TRACE4(( " number of bitmaps: %d\n", nbitmaps )); -+ - if ( nbitmaps != face->nmetrics ) - return PCF_Err_Invalid_File_Format; - - if ( FT_NEW_ARRAY( offsets, nbitmaps ) ) - return error; - -- FT_TRACE4(( "pcf_get_bitmaps:\n" )); -- - for ( i = 0; i < nbitmaps; i++ ) - { - if ( PCF_BYTE_ORDER( format ) == MSBFirst ) -@@ -612,7 +705,7 @@ THE SOFTWARE. - else - (void)FT_READ_LONG_LE( offsets[i] ); - -- FT_TRACE4(( " bitmap %d: offset %ld (0x%lX)\n", -+ FT_TRACE5(( " bitmap %d: offset %ld (0x%lX)\n", - i, offsets[i], offsets[i] )); - } - if ( error ) -@@ -640,15 +733,22 @@ THE SOFTWARE. - FT_UNUSED( sizebitmaps ); /* only used for debugging */ - - for ( i = 0; i < nbitmaps; i++ ) -- face->metrics[i].bits = stream->pos + offsets[i]; -+ { -+ /* rough estimate */ -+ if ( ( offsets[i] < 0 ) || -+ ( (FT_ULong)offsets[i] > size ) ) -+ { -+ FT_ERROR(( "pcf_get_bitmaps:")); -+ FT_ERROR(( " invalid offset to bitmap data of glyph %d\n", i )); -+ } -+ else -+ face->metrics[i].bits = stream->pos + offsets[i]; -+ } - - face->bitmapsFormat = format; - -- FT_FREE ( offsets ); -- return error; -- - Bail: -- FT_FREE ( offsets ); -+ FT_FREE( offsets ); - return error; - } - -@@ -734,7 +834,7 @@ THE SOFTWARE. - - tmpEncoding[j].glyph = (FT_Short)encodingOffset; - -- FT_TRACE4(( " code %d (0x%04X): idx %d\n", -+ FT_TRACE5(( " code %d (0x%04X): idx %d\n", - tmpEncoding[j].enc, tmpEncoding[j].enc, - tmpEncoding[j].glyph )); - -@@ -828,7 +928,8 @@ THE SOFTWARE. - if ( error ) - goto Bail; - -- error = FT_READ_ULONG_LE( format ); -+ if ( FT_READ_ULONG_LE( format ) ) -+ goto Bail; - - if ( !PCF_FORMAT_MATCH( format, PCF_DEFAULT_FORMAT ) && - !PCF_FORMAT_MATCH( format, PCF_ACCEL_W_INKBOUNDS ) ) -@@ -876,7 +977,6 @@ THE SOFTWARE. - accel->ink_minbounds = accel->minbounds; /* I'm not sure about this */ - accel->ink_maxbounds = accel->maxbounds; - } -- return error; - - Bail: - return error; -@@ -1082,11 +1182,12 @@ THE SOFTWARE. - else - root->family_name = NULL; - -- /* Note: We shift all glyph indices by +1 since we must -+ /* -+ * Note: We shift all glyph indices by +1 since we must - * respect the convention that glyph 0 always corresponds -- * to the "missing glyph". -+ * to the `missing glyph'. - * -- * This implies bumping the number of "available" glyphs by 1. -+ * This implies bumping the number of `available' glyphs by 1. - */ - root->num_glyphs = face->nmetrics + 1; - -@@ -1171,7 +1272,7 @@ THE SOFTWARE. - Exit: - if ( error ) - { -- /* this is done to respect the behaviour of the original */ -+ /* This is done to respect the behaviour of the original */ - /* PCF font driver. */ - error = PCF_Err_Invalid_File_Format; - } diff -ruN --exclude=CVS /usr/ports/print/freetype2/pkg-descr /usr/home/chinsan/project/freetype2/pkg-descr --- /usr/ports/print/freetype2/pkg-descr Mon Oct 30 03:26:05 2006 +++ /usr/home/chinsan/project/freetype2/pkg-descr Mon Mar 12 19:51:16 2007 @@ -7,4 +7,4 @@ applications. ttfbanner: make posters using a TrueType font -WWW: http://freetype.sourceforge.net/freetype1/projects.html +WWW: http://freetype.sourceforge.net/ diff -ruN --exclude=CVS /usr/ports/print/freetype2/pkg-plist /usr/home/chinsan/project/freetype2/pkg-plist --- /usr/ports/print/freetype2/pkg-plist Mon Oct 30 03:26:05 2006 +++ /usr/home/chinsan/project/freetype2/pkg-plist Thu Apr 5 22:02:46 2007 @@ -12,11 +12,13 @@ include/freetype2/freetype/ftchapters.h include/freetype2/freetype/fterrdef.h include/freetype2/freetype/fterrors.h +include/freetype2/freetype/ftgasp.h include/freetype2/freetype/ftglyph.h include/freetype2/freetype/ftgxval.h include/freetype2/freetype/ftgzip.h include/freetype2/freetype/ftimage.h include/freetype2/freetype/ftincrem.h +include/freetype2/freetype/ftlcdfil.h include/freetype2/freetype/ftlist.h include/freetype2/freetype/ftlzw.h include/freetype2/freetype/ftmac.h --- freetype2-2.3.3.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted: