Fix building with libpng15 wrt #378335 by Diego Elio Pettenò
authorSamuli Suominen <ssuominen@gentoo.org>
Tue, 13 Sep 2011 13:22:29 +0000 (13:22 +0000)
committerSamuli Suominen <ssuominen@gentoo.org>
Tue, 13 Sep 2011 13:22:29 +0000 (13:22 +0000)
Package-Manager: portage-2.2.0_alpha55/cvs/Linux x86_64

app-editors/ted/ChangeLog
app-editors/ted/Manifest
app-editors/ted/files/ted-2.21-libpng15.patch [new file with mode: 0644]
app-editors/ted/ted-2.21.ebuild

index 2ec6c9c84aea02b921a591bcfd53fd23b3920a9c..eb242bc84c1c8543041239bf67582341075ac104 100644 (file)
@@ -1,6 +1,10 @@
 # ChangeLog for app-editors/ted
 # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-editors/ted/ChangeLog,v 1.39 2011/07/20 16:20:46 pacho Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-editors/ted/ChangeLog,v 1.40 2011/09/13 13:22:29 ssuominen Exp $
+
+  13 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> ted-2.21.ebuild,
+  +files/ted-2.21-libpng15.patch:
+  Fix building with libpng15 wrt #378335 by Diego Elio Pettenò
 
   20 Jul 2011; Pacho Ramos <pacho@gentoo.org> metadata.xml:
   Drop maintainer due retirement, bug #81177
index 81d29713edfca408a5a2d8734ec53d88972e2619..e410bcdb558764776f7ab47d50b646e73197e853 100644 (file)
@@ -1,17 +1,18 @@
 -----BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
+Hash: SHA256
 
 AUX ted-2.20-libpng14.patch 358 RMD160 3e09bd37e0a8c526ff0ac730dd412c035e24cf0f SHA1 a0151fa107b9f79a69268c28900418cec395eba7 SHA256 eb480afa89079204bf6f9c7bbe5d039b01a2b427284ffba69e5e7dceab5228ae
+AUX ted-2.21-libpng15.patch 13063 RMD160 590afc9fd434a906fc68a4984942ba8895cced06 SHA1 ffdc9edbe8babc5b3cddb660ae5fa603620fb5c2 SHA256 90ecc97cad8c04d310f1dee7752ca320ccc37a30073b1cd82146224a32f720be
 DIST ted-2.20.src.tar.gz 3903673 RMD160 e42fa339dcd8d7821c816bc2ed090617320dca70 SHA1 77f63421ca3e0472312febb39c9f2b1bf2a59a42 SHA256 5cc58ccb7bc38f7f0dacc1dfc836a43d35ac94a32cde54275b583b2e4d6f5335
 DIST ted-2.21.src.tar.gz 3956815 RMD160 68935d62d216708c7053910f1261353176cf5c72 SHA1 303b15de1fe97e473c4b89a88b6e127ee81e07e9 SHA256 6c4bdebb8980fac00cf71ebc6c5f9bddee8ae13ab2327125dda95aa6948b363a
 EBUILD ted-2.20.ebuild 1191 RMD160 cb8ce9f09290c9b0c67f2dbbb1ff09945ba34a3e SHA1 b75a00472c1326c365a2b5a2e8cc7781728935e9 SHA256 74c87c54ee065cf90316c13d48abe7682e91798af29c1d94bdf7eac0af1ee5e9
-EBUILD ted-2.21.ebuild 1201 RMD160 ba88c86919264cb8cd28133edcfb9b1285c335a8 SHA1 6a3df9c1a82720ee4e7bb53d6e501a74a1b48854 SHA256 245731f904e28bdd8212caa7d16494bfc5d5a5f369a64b9ab6401458e1b3eb06
-MISC ChangeLog 4630 RMD160 2385dfbd2e11881a3e2e99f262c6f4d35eb29303 SHA1 e2d11bb18cf0702646ce1e6b24d082e6d02decb5 SHA256 863f5a5330bed7abfe05d13eb82613a283063d7aecea6994370b0964cce01e2c
+EBUILD ted-2.21.ebuild 1196 RMD160 29483b42c8b0071d05f9b94d34d0096dab29f7ec SHA1 3120382b25d142176c4d30f456054b0b8fed1a82 SHA256 6ec0076feaf4e31926961a87dcde9afff9557b3d06e9fba48903f1710c1a32ea
+MISC ChangeLog 4804 RMD160 5731d9d729bbfac69c1c96c7225ebdc77fb4b968 SHA1 e6cf7e6c98448543c0f970ed6d4ddd351cd4b4b5 SHA256 161a52b9d96a623b20c9911b5db905b6eeca78958e416941ad0b67d56636eb97
 MISC metadata.xml 236 RMD160 92f49f8275e75caf57b88a3172d5204eaa4e33ae SHA1 dd1a8550a514e55ab0ed6190ab4794bb090994f8 SHA256 56075995f83836ae824c7cb01931b98d6745f6d5a7764299c8262e801486b829
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.17 (GNU/Linux)
+Version: GnuPG v2.0.18 (GNU/Linux)
 
-iEYEARECAAYFAk4nAGQACgkQCaWpQKGI+9R35QCcDQGMz1wT7uiQuihfD+xpe2eI
-proAn0IcuZ/3AXmo0paWayZ6hkJ1uH0W
-=ZYcN
+iF4EAREIAAYFAk5vWUoACgkQXkR9YqOcLPFCPAEAmLkG635BWRPs4lq5yrmXqwRs
+MehFGu3kKc03uSGdCZ4BAIJqhRR9q8dPOXlZUw0CshrUEQChO8Cyf7B+cdX1o3RX
+=Q/Xd
 -----END PGP SIGNATURE-----
diff --git a/app-editors/ted/files/ted-2.21-libpng15.patch b/app-editors/ted/files/ted-2.21-libpng15.patch
new file mode 100644 (file)
index 0000000..afd30f9
--- /dev/null
@@ -0,0 +1,423 @@
+This patch is from netbsd pkgsrc
+
+ftp://ftp.netbsd.org/pub/NetBSD/packages/pkgsrc/editors/ted/patches/
+
+--- bitmap/bmpng.c
++++ bitmap/bmpng.c
+@@ -20,23 +20,32 @@
+ /*                                                                    */
+ /************************************************************************/
+-static int bpPngiToBitmap(    const png_info *                pngi,
++static int bpPngiToBitmap(    const png_structp               pngp,
++                              png_info *                      pngi,
+                               BitmapDescription *             bd )
+     {
+     unsigned int      col;
++    png_uint_32               res_x, res_y;
++    int                       unit_type= 0;
+-    bd->bdPixelsWide= pngi->width;
+-    bd->bdPixelsHigh= pngi->height;
++    bd->bdPixelsWide= png_get_image_width( pngp, pngi );
++    bd->bdPixelsHigh= png_get_image_height( pngp, pngi );
+     bd->bdHasAlpha= 0;
+-    switch( pngi->color_type )
++    switch( png_get_color_type( pngp, pngi ) )
+       {
+       case PNG_COLOR_TYPE_PALETTE:
++          {
++          int         num_palette;
++          png_colorp  palette;
++
++          png_get_PLTE( pngp, pngi, &palette, &num_palette );
++
+           bd->bdColorEncoding= BMcoRGB8PALETTE;
+-          bd->bdColorCount= pngi->num_palette;
++          bd->bdColorCount= num_palette;
+           bd->bdBitsPerSample= 8;
+           bd->bdSamplesPerPixel= 3;
+-          bd->bdBitsPerPixel= pngi->bit_depth;
++          bd->bdBitsPerPixel= png_get_bit_depth( pngp, pngi );
+           bd->bdRGB8Palette= (RGB8Color *)
+                               malloc( bd->bdColorCount* sizeof(RGB8Color) );
+@@ -46,47 +55,51 @@ static int bpPngiToBitmap( const png_inf
+           for ( col= 0; col < bd->bdColorCount; col++ )
+               {
+-              bd->bdRGB8Palette[col].rgb8Red= pngi->palette[col].red;
+-              bd->bdRGB8Palette[col].rgb8Green= pngi->palette[col].green;
+-              bd->bdRGB8Palette[col].rgb8Blue= pngi->palette[col].blue;
++              bd->bdRGB8Palette[col].rgb8Red= palette[col].red;
++              bd->bdRGB8Palette[col].rgb8Green= palette[col].green;
++              bd->bdRGB8Palette[col].rgb8Blue= palette[col].blue;
+               bd->bdRGB8Palette[col].rgb8Alpha= 0;
+               }
++          }
+           break;
+       case PNG_COLOR_TYPE_RGB:
+           bd->bdColorEncoding= BMcoRGB;
+-          bd->bdBitsPerSample= pngi->bit_depth;
+-          bd->bdSamplesPerPixel= pngi->channels;
+-          bd->bdBitsPerPixel= pngi->pixel_depth;
++          bd->bdBitsPerSample= png_get_bit_depth( pngp, pngi );
++          bd->bdSamplesPerPixel= png_get_channels( pngp, pngi );
++          bd->bdBitsPerPixel= bd->bdSamplesPerPixel* bd->bdBitsPerSample;
+           break;
+       case PNG_COLOR_TYPE_GRAY:
+           bd->bdColorEncoding= BMcoWHITEBLACK;
+-          bd->bdBitsPerSample= pngi->bit_depth;
+-          bd->bdSamplesPerPixel= pngi->channels;
+-          bd->bdBitsPerPixel= pngi->pixel_depth;
++          bd->bdBitsPerSample= png_get_bit_depth( pngp, pngi );
++          bd->bdSamplesPerPixel= png_get_channels( pngp, pngi );
++          bd->bdBitsPerPixel= bd->bdSamplesPerPixel* bd->bdBitsPerSample;
+           break;
+       case PNG_COLOR_TYPE_RGB_ALPHA:
+           bd->bdHasAlpha= 1;
+           bd->bdColorEncoding= BMcoRGB;
+-          bd->bdBitsPerSample= pngi->bit_depth;
+-          bd->bdSamplesPerPixel= pngi->channels;
+-          bd->bdBitsPerPixel= pngi->pixel_depth;
++          bd->bdBitsPerSample= png_get_bit_depth( pngp, pngi );
++          bd->bdSamplesPerPixel= png_get_channels( pngp, pngi );
++          bd->bdBitsPerPixel= bd->bdSamplesPerPixel* bd->bdBitsPerSample;
+           break;
+       case PNG_COLOR_TYPE_GRAY_ALPHA:
+           bd->bdHasAlpha= 1;
+-          LDEB(pngi->color_type); return -1;
++          LDEB(png_get_color_type( pngp, pngi )); return -1;
+       default:
+-          LDEB(pngi->color_type); return -1;
++          LDEB(png_get_color_type( pngp, pngi )); return -1;
+       }
+-    bd->bdBytesPerRow= pngi->rowbytes;
++    bd->bdBytesPerRow= png_get_rowbytes( pngp, pngi );
+     bd->bdBufferLength= bd->bdBytesPerRow* bd->bdPixelsHigh;
+-    switch( pngi->phys_unit_type )
++    if  ( !  png_get_pHYs( pngp, pngi, &res_x, &res_y, &unit_type ) )
++      { unit_type= PNG_RESOLUTION_UNKNOWN;    }
++
++    switch( unit_type )
+       {
+       case PNG_RESOLUTION_UNKNOWN:
+           bd->bdUnit= BMunPIXEL;
+@@ -96,12 +109,12 @@ static int bpPngiToBitmap(        const png_inf
+       case PNG_RESOLUTION_METER:
+           bd->bdUnit= BMunM;
+-          bd->bdXResolution= pngi->x_pixels_per_unit;
+-          bd->bdYResolution= pngi->y_pixels_per_unit;
++          bd->bdXResolution= res_x;
++          bd->bdYResolution= res_y;
+           break;
+       default:
+-          LDEB(pngi->phys_unit_type);
++          LDEB(unit_type);
+           return -1;
+       }
+@@ -119,11 +132,11 @@ static int bmPngReadContents(    png_info *
+     unsigned char *           buffer;
+     numberOfPasses= 1;
+-    if  ( pngi->interlace_type )
++    if  ( png_get_interlace_type( png, pngi ) )
+       { numberOfPasses= png_set_interlace_handling( png ); }
+-    if  ( pngi->color_type == PNG_COLOR_TYPE_RGB      &&
+-        pngi->bit_depth == 16                         )
++    if  ( png_get_color_type( png, pngi ) == PNG_COLOR_TYPE_RGB       &&
++        png_get_bit_depth( png, pngi ) == 16                  )
+       {
+       const unsigned short    one= 1;
+       const unsigned char *   testEndian= (const unsigned char *)&one;
+@@ -133,9 +146,6 @@ static int bmPngReadContents(      png_info *
+       }
+     png_start_read_image( png );
+-    /*
+-    png_read_update_info( png, pngi );
+-    */
+     buffer= (unsigned char *)malloc( bd->bdBufferLength );
+     if  ( ! buffer )
+@@ -236,9 +246,9 @@ int bmPngReadPng(  BitmapDescription *     bd
+     png_read_info( pngp, pngip );
+-    if  ( bpPngiToBitmap( pngip, bd ) )
++    if  ( bpPngiToBitmap( pngp, pngip, bd ) )
+       {
+-      LLLDEB(pngip->color_type,bd->bdColorCount,bd->bdRGB8Palette); 
++      LLDEB(bd->bdColorCount,bd->bdRGB8Palette); 
+       png_destroy_read_struct( &pngp, &pngip, (png_infop *)0 );
+       return -1;
+       }
+@@ -282,44 +292,43 @@ int bmCanWritePngFile( const BitmapDescr
+ static int bpPngiFromBitmap(  png_structp                     png,
+                               png_info *                      pngi,
++                              png_colorp *                    pPalette,
+                               const BitmapDescription *       bd )
+     {
+-    png_info_init( pngi );
+-    pngi->width= bd->bdPixelsWide;
+-    pngi->height= bd->bdPixelsHigh;
++    int                       bit_depth;
++    int                       color_type;
++    png_color_8               sig_bit;
+     switch( bd->bdUnit )
+       {
+       case BMunM:
+-          pngi->phys_unit_type= PNG_RESOLUTION_METER;
+-          pngi->x_pixels_per_unit= bd->bdXResolution;
+-          pngi->y_pixels_per_unit= bd->bdYResolution;
+-          pngi->valid |= PNG_INFO_pHYs;
++          png_set_pHYs( png, pngi,
++                          bd->bdXResolution,
++                          bd->bdYResolution,
++                          PNG_RESOLUTION_METER);
+           break;
+       case BMunINCH:
+-          pngi->phys_unit_type= PNG_RESOLUTION_METER;
+-          pngi->x_pixels_per_unit= (int)( 39.37* bd->bdXResolution );
+-          pngi->y_pixels_per_unit= (int)( 39.37* bd->bdYResolution );
+-          pngi->valid |= PNG_INFO_pHYs;
++          png_set_pHYs( png, pngi,
++                          (int)( 39.37* bd->bdXResolution ),
++                          (int)( 39.37* bd->bdYResolution ),
++                          PNG_RESOLUTION_METER);
+           break;
+       case BMunPOINT:
+-          pngi->phys_unit_type= PNG_RESOLUTION_METER;
+-          pngi->x_pixels_per_unit= POINTS_PER_M* bd->bdXResolution;
+-          pngi->y_pixels_per_unit= POINTS_PER_M* bd->bdYResolution;
+-          pngi->valid |= PNG_INFO_pHYs;
++          png_set_pHYs( png, pngi,
++                          POINTS_PER_M* bd->bdXResolution,
++                          POINTS_PER_M* bd->bdYResolution,
++                          PNG_RESOLUTION_METER);
+           break;
+       case BMunPIXEL:
+-          pngi->phys_unit_type= PNG_RESOLUTION_UNKNOWN;
+-          pngi->x_pixels_per_unit= 1;
+-          pngi->y_pixels_per_unit= 1;
++          png_set_pHYs(png, pngi, 1, 1, PNG_RESOLUTION_UNKNOWN);
+           break;
+       default:
+           LDEB(bd->bdUnit);
+-          pngi->phys_unit_type= PNG_RESOLUTION_UNKNOWN;
++          png_set_pHYs(png, pngi, 1, 1, PNG_RESOLUTION_UNKNOWN);
+           break;
+       }
+@@ -329,41 +338,48 @@ static int bpPngiFromBitmap(     png_structp
+       case BMcoBLACKWHITE:
+       case BMcoWHITEBLACK:
+-          pngi->bit_depth= bd->bdBitsPerPixel;
++          bit_depth= bd->bdBitsPerPixel;
+           if  ( bd->bdHasAlpha )
+-              { pngi->color_type= PNG_COLOR_TYPE_GRAY_ALPHA;  }
+-          else{ pngi->color_type= PNG_COLOR_TYPE_GRAY;        }
+-          pngi->sig_bit.gray= bd->bdBitsPerSample;
++              { color_type= PNG_COLOR_TYPE_GRAY_ALPHA;        }
++          else{ color_type= PNG_COLOR_TYPE_GRAY;              }
++          sig_bit.gray= bd->bdBitsPerSample;
+           break;
+       case BMcoRGB:
+-          pngi->bit_depth= bd->bdBitsPerSample;
++          bit_depth= bd->bdBitsPerSample;
+           if  ( bd->bdHasAlpha )
+-              { pngi->color_type= PNG_COLOR_TYPE_RGB_ALPHA;   }
+-          else{ pngi->color_type= PNG_COLOR_TYPE_RGB;         }
+-          pngi->sig_bit.red= bd->bdBitsPerSample;
+-          pngi->sig_bit.green= bd->bdBitsPerSample;
+-          pngi->sig_bit.blue= bd->bdBitsPerSample;
++              { color_type= PNG_COLOR_TYPE_RGB_ALPHA; }
++          else{ color_type= PNG_COLOR_TYPE_RGB;       }
++          sig_bit.red= bd->bdBitsPerSample;
++          sig_bit.green= bd->bdBitsPerSample;
++          sig_bit.blue= bd->bdBitsPerSample;
+           break;
+       case BMcoRGB8PALETTE:
+-          pngi->bit_depth= bd->bdBitsPerPixel;
+-          pngi->color_type= PNG_COLOR_TYPE_PALETTE;
++          bit_depth= bd->bdBitsPerPixel;
++          color_type= PNG_COLOR_TYPE_PALETTE;
+-          pngi->valid |= PNG_INFO_PLTE;
+-          pngi->palette= (png_color *)malloc( 256* sizeof( png_color ) );
+-          if  ( ! pngi->palette )
+-              { XDEB(pngi->palette); return -1;       }
+-          pngi->num_palette= bd->bdColorCount;
+-          pngi->sig_bit.red= bd->bdBitsPerSample;
+-          pngi->sig_bit.green= bd->bdBitsPerSample;
+-          pngi->sig_bit.blue= bd->bdBitsPerSample;
+-          for ( i= 0; i < pngi->num_palette; i++ )
++          if  ( bd->bdColorCount > PNG_MAX_PALETTE_LENGTH )
+               {
+-              pngi->palette[i].red= bd->bdRGB8Palette[i].rgb8Red;
+-              pngi->palette[i].green= bd->bdRGB8Palette[i].rgb8Green;
+-              pngi->palette[i].blue= bd->bdRGB8Palette[i].rgb8Blue;
++              LLDEB(bd->bdColorCount,PNG_MAX_PALETTE_LENGTH);
++              return -1;
+               }
++
++          *pPalette= (png_color *)malloc( PNG_MAX_PALETTE_LENGTH*
++                                                  sizeof( png_color ) );
++          if  ( ! *pPalette )
++              { XDEB(*pPalette); return -1;   }
++          sig_bit.red= bd->bdBitsPerSample;
++          sig_bit.green= bd->bdBitsPerSample;
++          sig_bit.blue= bd->bdBitsPerSample;
++          for ( i= 0; i < bd->bdColorCount; i++ )
++              {
++              (*pPalette)[i].red= bd->bdRGB8Palette[i].rgb8Red;
++              (*pPalette)[i].green= bd->bdRGB8Palette[i].rgb8Green;
++              (*pPalette)[i].blue= bd->bdRGB8Palette[i].rgb8Blue;
++              }
++
++          png_set_PLTE( png, pngi, (*pPalette), bd->bdColorCount );
+           break;
+       default:
+@@ -371,7 +387,13 @@ static int bpPngiFromBitmap(      png_structp
+           return -1;
+       }
+-    pngi->interlace_type= 0;
++    png_set_sBIT( png, pngi, &sig_bit );
++    png_set_IHDR( png, pngi,
++                      bd->bdPixelsWide, bd->bdPixelsHigh,
++                      bit_depth, color_type,
++                      PNG_INTERLACE_NONE,
++                      PNG_COMPRESSION_TYPE_BASE,
++                      PNG_FILTER_TYPE_BASE );
+     return 0;
+     }
+@@ -395,8 +417,8 @@ static void bmPngWriteContents(    png_stru
+           }
+       }
+-    if  ( pngi->color_type == PNG_COLOR_TYPE_RGB      &&
+-        bd->bdBitsPerSample == 16                     )
++    if  ( png_get_color_type( png, pngi ) == PNG_COLOR_TYPE_RGB       &&
++        bd->bdBitsPerSample == 16                             )
+       {
+       const unsigned short    one= 1;
+       const unsigned char *   testEndian= (const unsigned char *)&one;
+@@ -431,9 +453,9 @@ static void bmPngWriteContents(    png_stru
+           from= scratch;
+           }
+-      if  ( pngi->color_type == PNG_COLOR_TYPE_RGB    &&
+-            bd->bdBitsPerSample == 16                 &&
+-            scratch                                   )
++      if  ( png_get_color_type( png, pngi ) == PNG_COLOR_TYPE_RGB     &&
++            bd->bdBitsPerSample == 16                                 &&
++            scratch                                                   )
+           {
+           int                 col;
+           const BmUint16 *    fr= (const BmUint16 *)from;
+@@ -453,10 +475,6 @@ static void bmPngWriteContents(   png_stru
+     png_write_end( png, pngi );
+-    if  ( bd->bdColorEncoding == BMcoRGB8PALETTE      &&
+-        pngi->palette                                 )
+-      { free( pngi->palette );        }
+-
+     if  ( scratch )
+       { free( scratch );      }
+@@ -510,50 +528,43 @@ int bmPngWritePng(               const BitmapDescript
+                               const unsigned char *           buffer,
+                               SimpleOutputStream *            sos )
+     {
++    int                       rval= 0;
+     png_structp               pngp= (png_structp)0;
+     png_infop         pngip= (png_infop)0;
++    png_colorp                palette= (png_colorp)0;
+     pngp = png_create_write_struct( PNG_LIBPNG_VER_STRING, (void *)0,
+                                   (png_error_ptr)0, (png_error_ptr)0 );
+     if  ( ! pngp )
+-      { LDEB(1); return -1;   }
++      { XDEB(pngp); rval= -1; goto ready;     }
+     pngip = png_create_info_struct( pngp );
+     if  ( ! pngip )
+-      {
+-      LDEB(1);
+-      png_destroy_write_struct( &pngp, (png_infop *)0 );
+-      return -1;
+-      }
++      { XDEB(pngip); rval= -1; goto ready;    }
++
++    /*
++    As the info struct is built by libpng this is not needed:
++    (The call will disappear from libpng in version 1.4)
++    png_info_init( pngi ); 
++    */
+     if  ( setjmp( png_jmpbuf( pngp ) ) )
+-      {
+-      LDEB(1);
+-      png_destroy_write_struct( &pngp, &pngip );
+-      /*  Crashes:
+-      if  ( bd->bdColorEncoding == BMcoRGB8PALETTE    &&
+-            pngip->palette                            )
+-          { free( pngip->palette );   }
+-      */
+-      return -1;
+-      }
++      { LDEB(1); rval= -1; goto ready;        }
+     png_init_io( pngp, (FILE *)0 );
+     png_set_write_fn( pngp, (void *)sos, bmPngWriteBytes, bmPngFlushBytes );
+-    if  ( bpPngiFromBitmap( pngp, pngip, bd ) )
+-      {
+-      LDEB(bd->bdColorEncoding);
+-      png_destroy_write_struct( &pngp, &pngip );
+-      return -1;
+-      }
+-
+-    /*
+-    png_write_info( pngp, pngip );
+-    */
++    if  ( bpPngiFromBitmap( pngp, pngip, &palette, bd ) )
++      { LDEB(bd->bdColorEncoding); rval= -1; goto ready; }
+     bmPngWriteContents( pngp, pngip, buffer, bd );
++  ready:
++
++    if  ( palette )
++      { free( palette );      }
++
+     png_destroy_write_struct( &pngp, &pngip );
+-    return 0;
++
++    return rval;
+     }
index 90652ce7aa75f8255cb7291e99a9cc653cec7fdc..4ee88dd0f02a1a5bed935a96d4e8127267cdea33 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2011 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-editors/ted/ted-2.21.ebuild,v 1.3 2011/03/27 10:21:33 nirbheek Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-editors/ted/ted-2.21.ebuild,v 1.4 2011/09/13 13:22:29 ssuominen Exp $
 
 EAPI=2
 inherit eutils
@@ -23,7 +23,7 @@ RDEPEND="${DEPEND}"
 S=${WORKDIR}/Ted-${PV}
 
 src_prepare() {
-       epatch "${FILESDIR}"/${PN}-2.20-libpng14.patch
+       epatch "${FILESDIR}"/${P}-libpng15.patch
 
        sed -i -e 's|/Ted/|/share/Ted/|' \
                "${S}"/appFrame/appFrameConfig.h.in \