Accepting request 446487 from GNOME:Factory

1

OBS-URL: https://build.opensuse.org/request/show/446487
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gdk-pixbuf?expand=0&rev=55
This commit is contained in:
Ludwig Nussel 2016-12-26 20:40:31 +00:00 committed by Git OBS Bridge
commit 5e764c3070
5 changed files with 109 additions and 4 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:85ab52ce9f2c26327141b3dcf21cca3da6a3f8de84b95fa1e727d8871a23245c
size 2718648

3
gdk-pixbuf-2.36.1.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9d5ba72070460c1b5b74115d395a3e33daeb7b7b67fb256cdccc9d7187c42a38
size 2711044

View File

@ -1,3 +1,20 @@
-------------------------------------------------------------------
Tue Dec 13 15:43:35 UTC 2016 - dimstar@opensuse.org
- Update to version 2.36.1:
+ Remove the pixdata loader (bgo#776004).
+ Fix integer overflows in the jpeg loader (bgo#775218).
+ Add an external thumbnailer for images.
+ Updated translations.
- Split the external thumbnailer into gdk-pixbug-thumbnailer.
-------------------------------------------------------------------
Fri Dec 9 15:02:53 UTC 2016 - mstaudt@suse.com
- Add u_contrib-gdk-pixbuf-xlib-Fix-rgb888amsb.patch:
Fix RGBA conversion for big endian X11 environments.
Fixes (boo#929462, bsc#1010497, bgo#775896).
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Sep 19 17:22:31 UTC 2016 - zaitor@opensuse.org Mon Sep 19 17:22:31 UTC 2016 - zaitor@opensuse.org

View File

@ -20,7 +20,7 @@
%define gdk_pixbuf_binary_version 2.10.0 %define gdk_pixbuf_binary_version 2.10.0
Name: gdk-pixbuf Name: gdk-pixbuf
Version: 2.36.0 Version: 2.36.1
Release: 0 Release: 0
Summary: An image loading library Summary: An image loading library
License: LGPL-2.1+ License: LGPL-2.1+
@ -30,6 +30,8 @@ Source: http://download.gnome.org/sources/gdk-pixbuf/2.36/%{name}-%{vers
Source1: macros.gdk-pixbuf Source1: macros.gdk-pixbuf
Source2: README.SUSE Source2: README.SUSE
Source99: baselibs.conf Source99: baselibs.conf
# PATCH-FIX-UPSTREAM u_contrib-gdk-pixbuf-xlib-Fix-rgb888amsb.patch boo#929462 bsc#1010497 bgo#775896 mstaudt@suse.com -- Fix RGBA conversion for big endian X11 environments
Patch0: u_contrib-gdk-pixbuf-xlib-Fix-rgb888amsb.patch
BuildRequires: libjasper-devel BuildRequires: libjasper-devel
BuildRequires: libjpeg-devel BuildRequires: libjpeg-devel
BuildRequires: libtiff-devel BuildRequires: libtiff-devel
@ -83,6 +85,17 @@ Clutter.
This package contains the utility to create the cache file needed for This package contains the utility to create the cache file needed for
loadable modules. loadable modules.
%package thumbnailer
Summary: System helper creating thumbnails
Group: System/Libraries
%description thumbnailer
gdk-pixbuf is an image loading library that can be extended by loadable
modules for new image formats. It is used by toolkits such as GTK+ or
Clutter.
This package contains the thumbnailer utility.
%package devel %package devel
Summary: An image loading library - Development Files Summary: An image loading library - Development Files
Group: Development/Languages/C and C++ Group: Development/Languages/C and C++
@ -102,6 +115,7 @@ This package contains development files for gdk-pixbuf.
%if !0%{?is_opensuse} %if !0%{?is_opensuse}
translation-update-upstream translation-update-upstream
%endif %endif
%patch0 -p1
%if "%_lib" == "lib64" %if "%_lib" == "lib64"
cp -a %{S:2} . cp -a %{S:2} .
%endif %endif
@ -196,6 +210,12 @@ fi
%{_bindir}/gdk-pixbuf-query-loaders* %{_bindir}/gdk-pixbuf-query-loaders*
%{_mandir}/man1/gdk-pixbuf-query-loaders*.1* %{_mandir}/man1/gdk-pixbuf-query-loaders*.1*
%files thumbnailer
%defattr(-, root, root)
%{_bindir}/gdk-pixbuf-thumbnailer
%dir %{_datadir}/thumbnailers
%{_datadir}/thumbnailers/gdk-pixbuf-thumbnailer.thumbnailer
%files devel %files devel
%defattr(-, root, root) %defattr(-, root, root)
%{_bindir}/gdk-pixbuf-csource %{_bindir}/gdk-pixbuf-csource

View File

@ -0,0 +1,68 @@
From: Max Staudt <mstaudt@suse.de>
Date: Fri Dec 9 14:26:34 2016 +0100
Subject: [PATCH]contrib/gdk-pixbuf-xlib: Fix rgb888amsb()
Patch-mainline: to be upstreamed
Git-repo: git://git.gnome.org/gdk-pixbuf
References: boo#929462 bsc#1010497
Signed-off-by: Max Staudt <mstaudt@suse.de>
On Little Endian, it wrote memory out of bounds (i.e. when running
inside a little endian client, connecting to a big endian X server).
On Big Endian, it only processed the first 1/4 of the icon.
The effects can be seen when running IceWM. Running native on Big Endian
ppc64 with a Big Endian X11 server, the icon background was 3/4 random:
https://bugzilla.suse.com/show_bug.cgi?id=929462
This match makes rgb888amsb() behave analogously to rgb888msb().
Signed-off-by: Max Staudt <mstaudt@suse.de>
---
contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c | 15 ---------------
1 file changed, 15 deletions(-)
diff --git a/contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c b/contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c
index 972c2be..422fdc8 100644
--- a/contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c
+++ b/contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-drawable.c
@@ -915,13 +915,8 @@ rgb888amsb (XImage *image, guchar *pixels, int rowstride, xlib_colormap *colorma
int bpl;
guint8 *srow = (guint8 *)image->data, *orow = pixels;
-#ifdef LITTLE
- guint32 *o;
- guint32 *s;
-#else
guint8 *s; /* for byte order swapping */
guint8 *o;
-#endif
d (printf ("32 bit, msb, with alpha\n"));
@@ -931,24 +926,14 @@ rgb888amsb (XImage *image, guchar *pixels, int rowstride, xlib_colormap *colorma
/* msb data */
for (yy = 0; yy < height; yy++) {
-#ifdef LITTLE
- s = (guint32 *) srow;
- o = (guint32 *) orow;
-#else
s = srow;
o = orow;
-#endif
for (xx = 0; xx < width; xx++) {
-#ifdef LITTLE
*o++ = s[1];
*o++ = s[2];
*o++ = s[3];
*o++ = 0xff;
s += 4;
-#else
- *o++ = (*s << 8) | 0xff; /* untested */
- s++;
-#endif
}
srow += bpl;
orow += rowstride;