From c6cfeac335078e18a3f111e3509b36bc3f21c2a346056f045989da24a19292ac Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Thu, 10 Jul 2014 11:50:24 +0000 Subject: [PATCH] Accepting request 239878 from home:fcrozat:branches:GNOME:Factory - Add cairo-xlib-endianness.patch: fix crash when client and server have different endianness [bnc#882951, fdo#63461] OBS-URL: https://build.opensuse.org/request/show/239878 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/cairo?expand=0&rev=83 --- cairo-xlib-endianness.patch | 15 +++++++++++++++ cairo.changes | 6 ++++++ cairo.spec | 3 +++ 3 files changed, 24 insertions(+) create mode 100644 cairo-xlib-endianness.patch diff --git a/cairo-xlib-endianness.patch b/cairo-xlib-endianness.patch new file mode 100644 index 0000000..60da2af --- /dev/null +++ b/cairo-xlib-endianness.patch @@ -0,0 +1,15 @@ +--- cairo/src/cairo-xlib-render-compositor.c 2013-04-12 11:22:48.010384018 +0200 ++++ cairo/src/cairo-xlib-render-compositor.c.new 2013-04-12 11:23:54.362925287 +0200 +@@ -1318,10 +1318,10 @@ + } + n = new; + d = (uint32_t *) data; +- do { ++ while (c--) { + *n++ = bswap_32 (*d); + d++; +- } while (--c); ++ } + data = (uint8_t *) new; + } + break; diff --git a/cairo.changes b/cairo.changes index 7bcc187..e30fa6a 100644 --- a/cairo.changes +++ b/cairo.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Jul 8 09:13:31 UTC 2014 - fcrozat@suse.com + +- Add cairo-xlib-endianness.patch: fix crash when client and server + have different endianness [bnc#882951, fdo#63461] + ------------------------------------------------------------------- Fri Apr 11 12:55:12 UTC 2014 - jw@suse.com diff --git a/cairo.spec b/cairo.spec index cf7a11b..0fc7f6c 100644 --- a/cairo.spec +++ b/cairo.spec @@ -34,6 +34,8 @@ Patch0: cairo-modules-no-version.patch Patch1: cairo-disable-lto.patch # PATCH-FIX-UPSTREAM cairo-render-thin-lines.patch fdo#77298 jw@suse.com -- Fix rendering of thin lines Patch2: cairo-render-thin-lines.patch +# PATCH-FIX-UPSTREAM cairo-xlib-endianness.patch fdo#63461 bnc#882951 fcrozat@suse.com -- Fix crash when client and server have different endianness +Patch3: cairo-xlib-endianness.patch # These libraries are needed only for tests. # Do not enable tests in build systems, it causes build loop! #BuildRequires: librsvg-devel poppler-devel @@ -157,6 +159,7 @@ cairo. %endif # fix_for_fdo77298.patch %patch2 -p1 +%patch3 -p1 %build # Needed by patch0 and patch1