[arch-commits] Commit in cinepaint/repos (8 files)

Ionut Biru ibiru at archlinux.org
Sun Feb 5 06:47:14 EST 2012


    Date: Sunday, February 5, 2012 @ 06:47:14
  Author: ibiru
Revision: 148694

db-move: moved cinepaint from [testing] to [extra] (x86_64)

Added:
  cinepaint/repos/extra-x86_64/LICENSE
    (from rev 148654, cinepaint/repos/testing-x86_64/LICENSE)
  cinepaint/repos/extra-x86_64/PKGBUILD
    (from rev 148654, cinepaint/repos/testing-x86_64/PKGBUILD)
  cinepaint/repos/extra-x86_64/cinepaint-libpng15.patch
    (from rev 148654, cinepaint/repos/testing-x86_64/cinepaint-libpng15.patch)
  cinepaint/repos/extra-x86_64/cinepaint.install
    (from rev 148654, cinepaint/repos/testing-x86_64/cinepaint.install)
Deleted:
  cinepaint/repos/extra-x86_64/LICENSE
  cinepaint/repos/extra-x86_64/PKGBUILD
  cinepaint/repos/extra-x86_64/cinepaint.install
  cinepaint/repos/testing-x86_64/

--------------------------+
 LICENSE                  |   50 ++--
 PKGBUILD                 |   89 ++++----
 cinepaint-libpng15.patch |  452 +++++++++++++++++++++++++++++++++++++++++++++
 cinepaint.install        |   22 +-
 4 files changed, 535 insertions(+), 78 deletions(-)

Deleted: extra-x86_64/LICENSE
===================================================================
--- extra-x86_64/LICENSE	2012-02-05 11:47:12 UTC (rev 148693)
+++ extra-x86_64/LICENSE	2012-02-05 11:47:14 UTC (rev 148694)
@@ -1,25 +0,0 @@
-Copyright (c) 2005, Kai-Uwe Behrmann
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met: 
-    * Redistributions of source code must retain the above copyright
-    notice, this list of conditions and the following disclaimer. 
-    * Redistributions in binary form must reproduce the above
-    copyright notice, this list of conditions and the following
-    disclaimer in the documentation and/or other materials provided
-    with the distribution.ntributors may be used to endorse or promote
-    products derived from this software without specific prior written
-    permission. 
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 

Copied: cinepaint/repos/extra-x86_64/LICENSE (from rev 148654, cinepaint/repos/testing-x86_64/LICENSE)
===================================================================
--- extra-x86_64/LICENSE	                        (rev 0)
+++ extra-x86_64/LICENSE	2012-02-05 11:47:14 UTC (rev 148694)
@@ -0,0 +1,25 @@
+Copyright (c) 2005, Kai-Uwe Behrmann
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met: 
+    * Redistributions of source code must retain the above copyright
+    notice, this list of conditions and the following disclaimer. 
+    * Redistributions in binary form must reproduce the above
+    copyright notice, this list of conditions and the following
+    disclaimer in the documentation and/or other materials provided
+    with the distribution.ntributors may be used to endorse or promote
+    products derived from this software without specific prior written
+    permission. 
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 

Deleted: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD	2012-02-05 11:47:12 UTC (rev 148693)
+++ extra-x86_64/PKGBUILD	2012-02-05 11:47:14 UTC (rev 148694)
@@ -1,42 +0,0 @@
-# $Id$
-# Maintainer: tobias [tobias.archlinux.org]
-# Contributor: tobias [tobias.justdreams.de]
-
-pkgname=cinepaint
-pkgver=1.0
-pkgrel=1
-pkgdesc="Sophisticated graphics manipulation programm supporting > 8bit pictures"
-arch=('i686' 'x86_64')
-license=('LGPL' 'GPL' 'MIT')
-url="http://www.cinepaint.org"
-depends=('gtk2' 'openexr' 'lcms' 'libxpm' 'fltk' 'ftgl' 'libxxf86vm')
-makedepends=('python2' 'gutenprint')
-optdepends=('python2: for python plug-ins' 'gutenprint: for print plug-ins')
-options=('!libtool')
-install=cinepaint.install
-source=(http://sourceforge.net/projects/cinepaint/files/CinePaint/${pkgname}-${pkgver}.tgz
-        LICENSE)
-md5sums=('7dfdb005d246578392ac9bd500534804'
-         '169085743f667c250ea2e4022efecf5f')
-
-build() {
-  cd "${srcdir}/${pkgname}"
-  find plug-ins/pygimp -type f -exec sed -i 's#env python#env python2#' {} +
-  sed -i 's|$(LDFLAGS) -o|$(LDFLAGS) $(GTK_LIBS) -o|' lib/Makefile.in
-
-  aclocal -I aclocal
-  autoconf
-  ./configure --prefix=/usr --libdir=/usr/lib --mandir=/usr/share/man \
-    --enable-gtk2 --enable-pygimp --with-python=/usr/bin/python2
-  sed -i 's/-Wl,,/-Wl,/' lib/fl_i18n/Makefile plug-ins/bracketing_to_hdr/Makefile \
-    plug-ins/collect/Makefile plug-ins/icc_examin/icc_examin/Makefile plug-ins/pdf/Makefile
-  make
-}
-
-package() {
-  cd "${srcdir}/${pkgname}"
-  make DESTDIR="${pkgdir}" install
-  sed -i -e "s|-I$srcdir/cinepaint||" -e "s|-I$srcdir/cinepaint/lib||" -e "/libcinepaint.la/d" \
-    -e "s|$srcdir/cinepaint/lib/.libs/\$dlname||" "${pkgdir}/usr/bin/cinepainttool"
-  install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
-}

Copied: cinepaint/repos/extra-x86_64/PKGBUILD (from rev 148654, cinepaint/repos/testing-x86_64/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD	                        (rev 0)
+++ extra-x86_64/PKGBUILD	2012-02-05 11:47:14 UTC (rev 148694)
@@ -0,0 +1,47 @@
+# $Id$
+# Maintainer: tobias [tobias.archlinux.org]
+# Contributor: tobias [tobias.justdreams.de]
+
+pkgname=cinepaint
+pkgver=1.0
+pkgrel=2
+pkgdesc="Sophisticated graphics manipulation programm supporting > 8bit pictures"
+arch=('i686' 'x86_64')
+license=('LGPL' 'GPL' 'MIT')
+url="http://www.cinepaint.org"
+depends=('gtk2' 'openexr' 'lcms' 'libxpm' 'fltk' 'ftgl' 'libxxf86vm')
+makedepends=('python2' 'gutenprint')
+optdepends=('python2: for python plug-ins' 
+            'gutenprint: for print plug-ins'
+            'ghostscript: for pdf plug-ins')
+options=('!libtool')
+install=cinepaint.install
+source=(http://sourceforge.net/projects/cinepaint/files/CinePaint/${pkgname}-${pkgver}.tgz
+        LICENSE cinepaint-libpng15.patch)
+md5sums=('7dfdb005d246578392ac9bd500534804'
+         '169085743f667c250ea2e4022efecf5f'
+         '682de65ad358512d00a8b76730453664')
+
+build() {
+  cd "${srcdir}/${pkgname}"
+  patch -p1 -i ../cinepaint-libpng15.patch
+  find plug-ins/pygimp -type f -exec sed -i 's#env python#env python2#' {} +
+  sed -i 's|$(LDFLAGS) -o|$(LDFLAGS) $(GTK_LIBS) -o|' lib/Makefile.in
+
+  aclocal -I aclocal
+  autoconf
+  LIBS+="-lstdc++ -lm -lX11" ./configure --prefix=/usr --libdir=/usr/lib --mandir=/usr/share/man \
+    --enable-gtk2 --enable-pygimp --with-python=/usr/bin/python2
+  sed -i 's/-Wl,,/-Wl,/' lib/fl_i18n/Makefile plug-ins/bracketing_to_hdr/Makefile \
+    plug-ins/collect/Makefile plug-ins/icc_examin/icc_examin/Makefile plug-ins/pdf/Makefile
+  make
+}
+
+package() {
+  cd "${srcdir}/${pkgname}"
+  make DESTDIR="${pkgdir}" install
+  sed -i -e "s|-I$srcdir/cinepaint||" -e "s|-I$srcdir/cinepaint/lib||" -e "/libcinepaint.la/d" \
+    -e "s|$srcdir/cinepaint/lib/.libs/\$dlname||" "${pkgdir}/usr/bin/cinepainttool"
+  sed -i "s/cinepaint.png/cinepaint/" "${pkgdir}/usr/share/applications/cinepaint.desktop"
+  install -D -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}

Copied: cinepaint/repos/extra-x86_64/cinepaint-libpng15.patch (from rev 148654, cinepaint/repos/testing-x86_64/cinepaint-libpng15.patch)
===================================================================
--- extra-x86_64/cinepaint-libpng15.patch	                        (rev 0)
+++ extra-x86_64/cinepaint-libpng15.patch	2012-02-05 11:47:14 UTC (rev 148694)
@@ -0,0 +1,452 @@
+diff -Naur cinepaint.old/plug-ins/png/png.c cinepaint/plug-ins/png/png.c
+--- cinepaint.old/plug-ins/png/png.c	2012-01-23 12:39:42.000000000 -0500
++++ cinepaint/plug-ins/png/png.c	2012-01-23 12:39:50.000000000 -0500
+@@ -390,6 +390,16 @@
+   gchar		*progress;	/* Title for progress display... */
+   guchar	alpha[256],	/* Index -> Alpha */
+   		*alpha_ptr;	/* Temporary pointer */
++  png_byte     color_type;
++  png_byte     bit_depth;
++  png_colorp palette;
++  int num_palette;
++  png_charpp iccp_name;
++  int compression_type;
++  png_bytepp iccp_profile;
++  png_uint_32 iccp_proflen;
++  png_uint_32 width, height;
++  png_byte channels;
+ 
+  /*
+   * PNG 0.89 and newer have a sane, forwards compatible constructor.
+@@ -405,7 +415,7 @@
+   info = (png_infop)calloc(sizeof(png_info), 1);
+ #endif /* PNG_LIBPNG_VER > 88 */
+ 
+-  if (setjmp (pp->jmpbuf))
++  if (setjmp (png_jmpbuf(pp)))
+   {
+     g_message ("%s\nPNG error. File corrupted?", filename);
+     return image;
+@@ -442,21 +452,26 @@
+   */
+ 
+   png_read_info(pp, info);
++  color_type = png_get_color_type(pp, info);
++  width=png_get_image_width(pp, info);
++  height=png_get_image_height(pp, info);
+ 
+  /*
+   * Latest attempt, this should be my best yet :)
+   */
+ 
++  bit_depth = png_get_bit_depth(pp, info);
++
+ #ifndef WORDS_BIGENDIAN
+-  if(info->bit_depth == 16)
++  if(bit_depth == 16)
+ 	  png_set_swap(pp);
+ #endif
+ 
+-  if (info->color_type == PNG_COLOR_TYPE_GRAY && info->bit_depth < 8) {
++  if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8) {
+     png_set_expand(pp);
+   }
+ 
+-  if (info->color_type == PNG_COLOR_TYPE_PALETTE && info->bit_depth < 8) {
++  if (color_type == PNG_COLOR_TYPE_PALETTE && bit_depth < 8) {
+     png_set_packing(pp);
+   }
+ 
+@@ -464,8 +479,8 @@
+   * Expand G+tRNS to GA, RGB+tRNS to RGBA
+   */
+ 
+-  if (info->color_type != PNG_COLOR_TYPE_PALETTE &&
+-                       (info->valid & PNG_INFO_tRNS)) {
++  if (color_type != PNG_COLOR_TYPE_PALETTE &&
++      (png_get_valid(pp, info, PNG_INFO_tRNS))) {
+     png_set_expand(pp);
+   }
+ 
+@@ -482,7 +497,7 @@
+ 
+ #if PNG_LIBPNG_VER > 99
+   if (png_get_valid(pp, info, PNG_INFO_tRNS) &&
+-      info->color_type == PNG_COLOR_TYPE_PALETTE)
++      color_type == PNG_COLOR_TYPE_PALETTE)
+   {
+     png_get_tRNS(pp, info, &alpha_ptr, &num, NULL);
+     /* Copy the existing alpha values from the tRNS chunk */
+@@ -505,9 +520,9 @@
+ 
+   png_read_update_info(pp, info);
+   
+-  if(info->bit_depth==16)
++  if(bit_depth==16)
+   {
+-	  switch (info->color_type)
++	  switch (color_type)
+ 	  {
+ 		  case PNG_COLOR_TYPE_RGB :		/* RGB */
+ 			  bpp        = 6;
+@@ -545,7 +560,7 @@
+   }
+   else
+   {
+-	  switch (info->color_type)
++	  switch (color_type)
+ 	  {
+ 		  case PNG_COLOR_TYPE_RGB :		/* RGB */
+ 			  bpp        = 3;
+@@ -582,7 +597,7 @@
+ 	  };
+   }
+ 
+-  image = gimp_image_new(info->width, info->height, image_type);
++  image = gimp_image_new(width, height, image_type);
+   if (image == -1)
+   {
+     g_message("Can't allocate new image\n%s", filename);
+@@ -595,7 +610,7 @@
+   * Create the "background" layer to hold the image...
+   */
+ 
+-  layer = gimp_layer_new(image, _("Background"), info->width, info->height,
++  layer = gimp_layer_new(image, _("Background"), width, height,
+                          layer_type, 100, NORMAL_MODE);
+   gimp_image_add_layer(image, layer, 0);
+ 
+@@ -627,20 +642,21 @@
+ 
+   empty= 0; /* by default assume no full transparent palette entries */
+ 
+-  if (info->color_type & PNG_COLOR_MASK_PALETTE) {
++  if (color_type & PNG_COLOR_MASK_PALETTE) {
+ 
+ #if PNG_LIBPNG_VER > 99
++    png_get_PLTE(pp, info, &palette, &num_palette);
+     if (png_get_valid(pp, info, PNG_INFO_tRNS)) {
+       for (empty= 0; empty < 256 && alpha[empty] == 0; ++empty);
+         /* Calculates number of fully transparent "empty" entries */
+ 
+-      gimp_image_set_cmap(image, (guchar *) (info->palette + empty),
+-                          info->num_palette - empty);
++      gimp_image_set_cmap(image, (guchar *) (palette + empty),
++                          num_palette - empty);
+     } else {
+-      gimp_image_set_cmap(image, (guchar *)info->palette, info->num_palette);
++      gimp_image_set_cmap(image, (guchar *)palette, num_palette);
+     }
+ #else
+-    gimp_image_set_cmap(image, (guchar *)info->palette, info->num_palette);
++    gimp_image_set_cmap(image, (guchar *)palette, num_palette);
+ #endif /* PNG_LIBPNG_VER > 99 */
+ 
+   }
+@@ -659,18 +675,19 @@
+   */
+ 
+   tile_height = gimp_tile_height ();
+-  pixel       = g_new(guchar, tile_height * info->width * bpp);
++  pixel       = g_new(guchar, tile_height * width * bpp);
+   pixels      = g_new(guchar *, tile_height);
++  channels=png_get_channels(pp, info);
+ 
+-  if(info->bit_depth==16)
++  if(bit_depth==16)
+   {
+ 	  for (i = 0; i < tile_height; i ++)
+-		  pixels[i] = pixel + info->width * info->channels * i * 2;
++		  pixels[i] = pixel + width * channels * i * 2;
+   }
+   else
+   {
+ 	  for (i = 0; i < tile_height; i ++)
+-		  pixels[i] = pixel + info->width * info->channels * i;
++		  pixels[i] = pixel + width * channels * i;
+   }
+ 
+   for (pass = 0; pass < num_passes; pass ++)
+@@ -680,11 +697,11 @@
+ 	   */
+ 
+ 	  for (begin = 0, end = tile_height;
+-			  begin < info->height;
++			  begin < height;
+ 			  begin += tile_height, end += tile_height)
+ 	  {
+-		  if (end > info->height)
+-			  end = info->height;
++		  if (end > height)
++			  end = height;
+ 
+ 		  num = end - begin;
+ 
+@@ -697,20 +714,21 @@
+ 		  gimp_pixel_rgn_set_rect(&pixel_rgn, pixel, 0, begin,
+ 				  drawable->width, num);
+ 
+-		  gimp_progress_update(((double)pass + (double)end / (double)info->height) /
++		  gimp_progress_update(((double)pass + (double)end / (double)height) /
+ 				  (double)num_passes);
+ 	  };
+   };
+ 
+ #if defined(PNG_iCCP_SUPPORTED)
+   /* set icc profile */
+-  if (info->iccp_proflen > 0) {
+-    gimp_image_set_icc_profile_by_mem (image, info->iccp_proflen,
+-                                              info->iccp_profile,
+-                                              ICC_IMAGE_PROFILE);
++  png_get_iCCP(pp, info,  (png_charpp)iccp_name, &compression_type, iccp_profile, &iccp_proflen);
++  if (iccp_proflen > 0) {
++    gimp_image_set_icc_profile_by_mem (image, iccp_proflen,
++				       (gchar *)iccp_profile,
++				       ICC_IMAGE_PROFILE);
+     printf ("%s:%d %s() set embedded profile \"%s\"\n",
+              __FILE__,__LINE__,__func__,
+-                                              info->iccp_name);
++	    (char *)iccp_name);
+   }
+ #endif
+ 
+@@ -808,6 +826,14 @@
+                 blue;           /* Used for palette background */
+   time_t	cutime;         /* Time since epoch */
+   struct tm	*gmt;		/* GMT broken down */
++  png_byte     color_type;
++  png_byte     bit_depth;
++  int filter_method=0;
++  png_colorp palette;
++  int num_palette;
++  png_charpp iccp_name;
++  png_uint_32 height;
++  int compression_type;
+ 
+  /*
+   * PNG 0.89 and newer have a sane, forwards compatible constructor.
+@@ -824,7 +849,7 @@
+   info = (png_infop)calloc(sizeof(png_info), 1);
+ #endif /* PNG_LIBPNG_VER > 88 */
+ 
+-  if (setjmp (pp->jmpbuf))
++  if (setjmp (png_jmpbuf(pp)))
+   {
+     g_message ("%s\nPNG error. Couldn't save image", filename);
+     return 0;
+@@ -857,15 +882,6 @@
+   drawable = gimp_drawable_get (drawable_ID);
+   type     = gimp_drawable_type (drawable_ID);
+ 
+- /*
+-  * Set the image dimensions, bit depth, interlacing and compression
+-  */
+-
+-  png_set_compression_level (pp, pngvals.compression_level);
+-
+-  info->width          = drawable->width;
+-  info->height         = drawable->height;
+-  info->interlace_type = pngvals.interlaced;
+ 
+  /*
+   * Set color type and remember bytes per pixel count 
+@@ -874,71 +890,69 @@
+   switch (type)
+   {
+     case RGB_IMAGE :
+-        info->color_type = PNG_COLOR_TYPE_RGB;
+-	info->bit_depth      = 8;
++        color_type = PNG_COLOR_TYPE_RGB;
++	bit_depth      = 8;
+         bpp              = 3;
+         break;
+     case RGBA_IMAGE :
+-        info->color_type = PNG_COLOR_TYPE_RGB_ALPHA;
+-	info->bit_depth      = 8;
++        color_type = PNG_COLOR_TYPE_RGB_ALPHA;
++	bit_depth      = 8;
+         bpp              = 4;
+         break;
+     case GRAY_IMAGE :
+-        info->color_type = PNG_COLOR_TYPE_GRAY;
+-	info->bit_depth      = 8;
++        color_type = PNG_COLOR_TYPE_GRAY;
++	bit_depth      = 8;
+         bpp              = 1;
+         break;
+     case GRAYA_IMAGE :
+-        info->color_type = PNG_COLOR_TYPE_GRAY_ALPHA;
+-	info->bit_depth      = 8;
++        color_type = PNG_COLOR_TYPE_GRAY_ALPHA;
++	bit_depth      = 8;
+         bpp              = 2;
+         break;
+     case INDEXED_IMAGE :
+ 	bpp		 = 1;
+-	info->bit_depth      = 8;
+-        info->color_type = PNG_COLOR_TYPE_PALETTE;
+-	info->valid      |= PNG_INFO_PLTE;
+-        info->palette= (png_colorp) gimp_image_get_cmap(image_ID, &num_colors);
+-        info->num_palette= num_colors;
++	bit_depth      = 8;
++        color_type = PNG_COLOR_TYPE_PALETTE;
++	png_get_valid(pp, info, PNG_INFO_PLTE);
++	png_set_PLTE(pp, info, (png_colorp) gimp_image_get_cmap(image_ID, &num_colors), num_colors);
+         break;
+     case INDEXEDA_IMAGE :
+ 	bpp		 = 2;
+-	info->bit_depth      = 8;
+-	info->color_type = PNG_COLOR_TYPE_PALETTE;
++	bit_depth      = 8;
++	color_type = PNG_COLOR_TYPE_PALETTE;
+ 	respin_cmap (pp, info, image_ID); /* fix up transparency */
+ 	break;
+     case U16_RGB_IMAGE :
+-        info->color_type = PNG_COLOR_TYPE_RGB;
+-	info->bit_depth      = 16;
++        color_type = PNG_COLOR_TYPE_RGB;
++	bit_depth      = 16;
+         bpp              = 6;
+         break;
+     case U16_RGBA_IMAGE :
+-        info->color_type = PNG_COLOR_TYPE_RGB_ALPHA;
+-	info->bit_depth      = 16;
++        color_type = PNG_COLOR_TYPE_RGB_ALPHA;
++	bit_depth      = 16;
+         bpp              = 8;
+         break;
+     case U16_GRAY_IMAGE :
+-        info->color_type = PNG_COLOR_TYPE_GRAY;
+-	info->bit_depth      = 16;
++        color_type = PNG_COLOR_TYPE_GRAY;
++	bit_depth      = 16;
+         bpp              = 2;
+         break;
+     case U16_GRAYA_IMAGE :
+-        info->color_type = PNG_COLOR_TYPE_GRAY_ALPHA;
+-	info->bit_depth      = 16;
++        color_type = PNG_COLOR_TYPE_GRAY_ALPHA;
++	bit_depth      = 16;
+         bpp              = 4;
+         break;
+     case U16_INDEXED_IMAGE :
+ 	bpp		 = 2;
+-	info->bit_depth      = 16;
+-        info->color_type = PNG_COLOR_TYPE_PALETTE;
+-	info->valid      |= PNG_INFO_PLTE;
+-        info->palette= (png_colorp) gimp_image_get_cmap(image_ID, &num_colors);
+-        info->num_palette= num_colors;
++	bit_depth      = 16;
++        color_type = PNG_COLOR_TYPE_PALETTE;
++	png_get_valid(pp, info, PNG_INFO_PLTE);
++	png_set_PLTE(pp, info, (png_colorp) gimp_image_get_cmap(image_ID, &num_colors), num_colors);
+         break;
+     case U16_INDEXEDA_IMAGE :
+ 	bpp		 = 4;
+-	info->bit_depth      = 16;
+-	info->color_type = PNG_COLOR_TYPE_PALETTE;
++	bit_depth      = 16;
++	color_type = PNG_COLOR_TYPE_PALETTE;
+ 	respin_cmap (pp, info, image_ID); /* fix up transparency */
+ 	break;
+     default:
+@@ -950,30 +964,36 @@
+   * Fix bit depths for (possibly) smaller colormap images
+   */
+   
+-  if (info->valid & PNG_INFO_PLTE) {
+-    if (info->num_palette <= 2)
+-      info->bit_depth= 1;
+-    else if (info->num_palette <= 4)
+-      info->bit_depth= 2;
+-    else if (info->num_palette <= 16)
+-      info->bit_depth= 4;
++  if (png_get_valid(pp, info, PNG_INFO_PLTE)) {
++    png_get_PLTE(pp, info, &palette, &num_palette);
++    if (num_palette <= 2)
++      bit_depth= 1;
++    else if (num_palette <= 4)
++      bit_depth= 2;
++    else if (num_palette <= 16)
++      bit_depth= 4;
+     /* otherwise the default is fine */
+   }
+ 
++ png_set_compression_level (pp, pngvals.compression_level);
++ png_set_IHDR(pp, info, drawable->width, drawable->height,
++	      bit_depth, color_type, pngvals.interlaced, compression_type, filter_method);
++
++
+   // write icc profile
+ #if defined(PNG_iCCP_SUPPORTED)
+   if (gimp_image_has_icc_profile (image_ID, ICC_IMAGE_PROFILE)) {
+-    int size;
++    int  size;
+     char *buffer;
+     
+     buffer = gimp_image_get_icc_profile_by_mem (image_ID, &size,
+                                                 ICC_IMAGE_PROFILE);
+     png_set_iCCP (pp, info,
+            gimp_image_get_icc_profile_description (image_ID, ICC_IMAGE_PROFILE),
+-                  0, buffer, size);
++                  0, (png_const_bytep)buffer, size);
+     printf ("%s:%d %s() embedd icc profile \"%s\"\n",
+              __FILE__,__LINE__,__func__,
+-                                              info->iccp_name);
++	    (char *)iccp_name);
+   }
+ #endif
+ 
+@@ -1039,13 +1059,13 @@
+   * Convert unpacked pixels to packed if necessary
+   */
+ 
+-  if (info->color_type == PNG_COLOR_TYPE_PALETTE && info->bit_depth < 8)
++  if (color_type == PNG_COLOR_TYPE_PALETTE && bit_depth < 8)
+     png_set_packing(pp);
+ 
+   /* Set swapping for 16 bit per sample images */
+   
+ #ifndef WORDS_BIGENDIAN
+-  if (info->bit_depth == 16)
++  if (bit_depth == 16)
+ 	  png_set_swap(pp);
+ #endif
+   
+@@ -1063,6 +1083,7 @@
+ 
+   gimp_pixel_rgn_init(&pixel_rgn, drawable, 0, 0, drawable->width,
+                       drawable->height, FALSE, FALSE);
++  height=png_get_image_height(pp, info);
+ 
+   for (pass = 0; pass < num_passes; pass ++)
+   {
+@@ -1077,7 +1098,7 @@
+ 	num = end - begin;
+ 	
+ 	gimp_pixel_rgn_get_rect (&pixel_rgn, pixel, 0, begin, drawable->width, num);
+-        if (info->valid & PNG_INFO_tRNS) {
++        if (png_get_valid(pp, info, PNG_INFO_tRNS)) {
+           for (i = 0; i < num; ++i) {
+ 	    fixed= pixels[i];
+             for (k = 0; k < drawable->width; ++k) {
+@@ -1085,7 +1106,7 @@
+             }
+           }
+        /* Forgot this case before, what if there are too many colors? */
+-        } else if (info->valid & PNG_INFO_PLTE && bpp == 2) {
++        } else if (png_get_valid(pp, info, PNG_INFO_PLTE) && bpp == 2) {
+           for (i = 0; i < num; ++i) {
+ 	    fixed= pixels[i];
+             for (k = 0; k < drawable->width; ++k) {
+@@ -1095,9 +1116,8 @@
+         }
+ 	
+ 	png_write_rows (pp, pixels, num);
+-	
+ 	gimp_progress_update (((double)pass + (double)end /
+-                    (double)info->height) / (double)num_passes);
++                    (double)height) / (double)num_passes);
+       };
+   };
+ 

Deleted: extra-x86_64/cinepaint.install
===================================================================
--- extra-x86_64/cinepaint.install	2012-02-05 11:47:12 UTC (rev 148693)
+++ extra-x86_64/cinepaint.install	2012-02-05 11:47:14 UTC (rev 148694)
@@ -1,11 +0,0 @@
-post_install() {
-  update-desktop-database -q
-}
-
-post_upgrade() {
-  post_install $1
-}
-
-post_remove() {
-  update-desktop-database -q
-}

Copied: cinepaint/repos/extra-x86_64/cinepaint.install (from rev 148654, cinepaint/repos/testing-x86_64/cinepaint.install)
===================================================================
--- extra-x86_64/cinepaint.install	                        (rev 0)
+++ extra-x86_64/cinepaint.install	2012-02-05 11:47:14 UTC (rev 148694)
@@ -0,0 +1,11 @@
+post_install() {
+  update-desktop-database -q
+}
+
+post_upgrade() {
+  post_install $1
+}
+
+post_remove() {
+  update-desktop-database -q
+}



More information about the arch-commits mailing list