]> git.pld-linux.org Git - packages/freetype.git/commitdiff
- updated to 2.0.4, removed obsolete include-nowarn patch freetype-2_0_4-1
authorJakub Bogusz <qboosh@pld-linux.org>
Sat, 30 Jun 2001 13:10:46 +0000 (13:10 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
- added patch to fix SEGV on .gsf fonts

Changed files:
    freetype.spec -> 1.49
    freetype2-gsf-segv.patch -> 1.1
    freetype2-include-nowarn.patch -> 1.2

freetype.spec
freetype2-gsf-segv.patch [new file with mode: 0644]
freetype2-include-nowarn.patch [deleted file]

index d3167b510633c343d5bd9f2e81cdbb2273459798..c45e17123be7adc0823da6ccede8d8efb92d58b8 100644 (file)
@@ -1,16 +1,18 @@
 Summary:       Truetype font rasterizer
 Summary(pl):   Rasteryzer fontów Truetype
 Name:          freetype
-Version:       2.0.2
-Release:       2
-License:       GPL
+Version:       2.0.4
+Release:       1
+License:       GPL or FTL
 Group:         Libraries
 Group(de):     Libraries
+Group(es):     Bibliotecas
 Group(fr):     Librairies
 Group(pl):     Biblioteki
-Source0:       ftp://freetype.sourceforge.net/pub/freetype/%{name}2/%{name}-%{version}-test.tar.bz2
+Source0:       ftp://freetype.sourceforge.net/pub/freetype/%{name}2/%{name}-%{version}.tar.bz2
+Source1:       ftp://freetype.sourceforge.net/pub/freetype/%{name}2/ftdocs-%{version}.tar.bz2
 Patch0:                %{name}2-DESTDIR.patch
-Patch1:                %{name}2-include-nowarn.patch
+Patch1:                %{name}2-gsf-segv.patch
 URL:           http://www.freetype.org/
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 Obsoletes:     freetype2
@@ -68,7 +70,7 @@ Static freetype libraries.
 Biblioteki statyczne freetype.
 
 %prep
-%setup -q -n freetype-%{version}-test
+%setup -q -b1
 %patch0 -p1
 %patch1 -p1
 
@@ -83,7 +85,7 @@ rm -rf $RPM_BUILD_ROOT
 %{__make} install \
        DESTDIR="$RPM_BUILD_ROOT"
 
-gzip -9nf LICENSE.TXT
+gzip -9nf docs/{CHANGES,FTL.txt,PATENTS,license.txt,todo,cache.txt}
 
 %post   -p /sbin/ldconfig
 %postun -p /sbin/ldconfig
@@ -93,11 +95,12 @@ rm -rf $RPM_BUILD_ROOT
 
 %files
 %defattr(644,root,root,755)
-%doc *.gz docs/*.html
+%doc docs/*.gz
 %attr(755,root,root) %{_libdir}/lib*so.*.*
 
 %files devel
 %defattr(644,root,root,755)
+%doc docs/*.html docs/{design,freetype2,glyphs,reference,tutorial}
 %attr(755,root,root) %{_bindir}/*
 %attr(755,root,root) %{_libdir}/lib*.so
 %attr(755,root,root) %{_libdir}/lib*.la
diff --git a/freetype2-gsf-segv.patch b/freetype2-gsf-segv.patch
new file mode 100644 (file)
index 0000000..1825211
--- /dev/null
@@ -0,0 +1,71 @@
+--- freetype-2.0.4/src/type1/t1load.c.orig     Tue Jun 19 10:28:23 2001
++++ freetype-2.0.4/src/type1/t1load.c  Sat Jun 30 00:00:25 2001
+@@ -73,7 +73,7 @@
+ #include <string.h>     /* for strncmp(), strcmp() */
+ #include <ctype.h>      /* for isalnum()           */
+-
++#include <stdlib.h>
+   /*************************************************************************/
+   /*                                                                       */
+@@ -1116,7 +1116,7 @@
+     for ( n = 0; n < loader->num_subrs; n++ )
+     {
+       FT_Int    index, size;
+-      FT_Byte*  base;
++      FT_Byte*  base, *temp;
+       /* If the next token isn't `dup', we are also done.  This */
+@@ -1150,12 +1149,18 @@
+       /*                                                         */
+       if ( face->type1.private_dict.lenIV >= 0 )
+       {
+-        psaux->t1_decrypt( base, size, 4330 );
++      /* decrypt writes to base - make temporary copy */
++        if ( (temp=malloc( size )) == NULL )
++        return;
++        MEM_Copy( temp, base, size );
++        psaux->t1_decrypt( temp, size, 4330 );
+         size -= face->type1.private_dict.lenIV;
+         base += face->type1.private_dict.lenIV;
++        error = T1_Add_Table( table, index, temp+4, size );
++        free( temp );
+       }
+-
++      else
+       error = T1_Add_Table( table, index, base, size );
+       if ( error )
+         goto Fail;
+     }
+@@ -1179,7 +1183,7 @@
+     PSAux_Interface*  psaux = (PSAux_Interface*)face->psaux;
+-    FT_Byte*    cur;
++    FT_Byte*    cur, *temp;
+     FT_Byte*    limit = parser->root.limit;
+     FT_Int      n;
+     FT_UInt     notdef_index = 0;
+@@ -1282,12 +1286,18 @@
+         if ( face->type1.private_dict.lenIV >= 0 )
+         {
+-          psaux->t1_decrypt( base, size, 4330 );
++        /* decrypt writes to base - make temporary copy */
++          if ( (temp = malloc( size )) == NULL )
++          return;
++          MEM_Copy( temp, base, size );
++          psaux->t1_decrypt( temp, size, 4330 );
+           size -= face->type1.private_dict.lenIV;
+           base += face->type1.private_dict.lenIV;
++          error = T1_Add_Table( code_table, n, temp+4, size );
++          free( temp );
+         }
+-
++      else
+         error = T1_Add_Table( code_table, n, base, size );
+         if ( error )
+           goto Fail;
diff --git a/freetype2-include-nowarn.patch b/freetype2-include-nowarn.patch
deleted file mode 100644 (file)
index e26b9e0..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-diff -Nur freetype-2.0.2-test.orig/builds/unix/ft2unix.h freetype-2.0.2-test/builds/unix/ft2unix.h
---- freetype-2.0.2-test.orig/builds/unix/ft2unix.h     Tue Dec 12 23:27:54 2000
-+++ freetype-2.0.2-test/builds/unix/ft2unix.h  Tue Mar 27 15:54:43 2001
-@@ -30,11 +30,11 @@
- #ifndef __FT2_BUILD_UNIX_H__
- #define __FT2_BUILD_UNIX_H__
--#define FT2_PUBLIC_FILE( x )    <freetype2/freetype/ ## x ## >
--#define FT2_CONFIG_FILE( x )    <freetype2/freetype/config/ ## x ## >
--#define FT2_INTERNAL_FILE( x )  <freetype2/freetype/internal/ ## x ## >
-+#define FT2_H_PUBLIC_FILE( x )    <freetype2/freetype/ ## x ## >
-+#define FT2_H_CONFIG_FILE( x )    <freetype2/freetype/config/ ## x ## >
-+#define FT2_H_INTERNAL_FILE( x )  <freetype2/freetype/internal/ ## x ## >
--#include FT2_CONFIG_FILE( ft2build.h )
-+#include FT2_H_CONFIG_FILE( ft2build.h )
- #endif /* __FT2_BUILD_UNIX_H__ */
This page took 0.164689 seconds and 4 git commands to generate.