Hello community,

here is the log from the commit of package DirectFB for openSUSE:Factory 
checked in at 2012-01-09 16:22:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/DirectFB (Old)
 and      /work/SRC/openSUSE:Factory/.DirectFB.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "DirectFB", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/DirectFB/DirectFB.changes        2011-12-21 
09:59:54.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.DirectFB.new/DirectFB.changes   2012-01-09 
16:22:48.000000000 +0100
@@ -1,0 +2,6 @@
+Fri Jan  6 17:10:14 UTC 2012 - [email protected]
+
+- build also against libpng15
+  * libpng15.patch
+
+-------------------------------------------------------------------

New:
----
  DirectFB-1.4.5-libpng15.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ DirectFB.spec ++++++
--- /var/tmp/diff_new_pack.gCcr0Z/_old  2012-01-09 16:22:50.000000000 +0100
+++ /var/tmp/diff_new_pack.gCcr0Z/_new  2012-01-09 16:22:50.000000000 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package DirectFB
 #
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -35,6 +35,9 @@
 Patch6:         DirectFB-0.9.24-warning.patch
 Patch9:         DirectFB-1.1.1.patch
 Patch11:        DirectFB-1.2.9-ignore-fbmodes.patch
+# PATCH-FIX-UPSTREAM pngtoico-libpng15.patch -- [email protected]; build with 
libpng15; sent today to [email protected]
+# build against libpng14 should not be affected, otherwise please let me know
+Patch12:        DirectFB-1.4.5-libpng15.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  LibVNCServer-devel
 BuildRequires:  SDL-devel
@@ -146,6 +149,7 @@
 #%patch8
 %patch9
 %patch11 -p1
+%patch12 -p1
 
 %build
 %ifarch s390 s390x

++++++ DirectFB-1.4.5-libpng15.patch ++++++
Index: DirectFB-1.4.5/tools/directfb-csource.c
===================================================================
--- DirectFB-1.4.5.orig/tools/directfb-csource.c
+++ DirectFB-1.4.5/tools/directfb-csource.c
@@ -290,11 +290,12 @@ static DFBResult load_image (const char
      FILE          *fp;
      png_structp    png_ptr  = NULL;
      png_infop      info_ptr = NULL;
+     png_colorp     png_palette;
      png_uint_32    width, height;
      unsigned char *data     = NULL;
      int            type;
      char           header[8];
-     int            bytes, pitch;
+     int            bytes, pitch, num_palette;
 
      dest_format =
        (desc->flags & DSDESC_PIXELFORMAT) ? desc->pixelformat : DSPF_UNKNOWN;
@@ -320,7 +321,7 @@ static DFBResult load_image (const char
      if (!png_ptr)
           goto cleanup;
 
-     if (setjmp (png_ptr->jmpbuf)) {
+     if (setjmp (png_jmpbuf(png_ptr))) {
           if (desc->preallocated[0].data) {
                free (desc->preallocated[0].data);
                desc->preallocated[0].data = NULL;
@@ -388,16 +389,17 @@ static DFBResult load_image (const char
 
      switch (src_format) {
           case DSPF_LUT8:
-               if (info_ptr->num_palette) {
+               png_get_PLTE(png_ptr, info_ptr, &png_palette, &num_palette);
+               if (num_palette) {
                     png_byte *alpha;
                     int       i, num;
 
-                    *palette_size = MIN (info_ptr->num_palette, 256);
+                    *palette_size = MIN (num_palette, 256);
                     for (i = 0; i < *palette_size; i++) {
                          palette[i].a = 0xFF;
-                         palette[i].r = info_ptr->palette[i].red;
-                         palette[i].g = info_ptr->palette[i].green;
-                         palette[i].b = info_ptr->palette[i].blue;
+                         palette[i].r = png_palette[i].red;
+                         palette[i].g = png_palette[i].green;
+                         palette[i].b = png_palette[i].blue;
                     }
                     if (png_get_valid (png_ptr, info_ptr, PNG_INFO_tRNS)) {
                          png_get_tRNS (png_ptr, info_ptr, &alpha, &num, NULL);
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to