Package: spice-client-gtk Version: 0.21-0nocelt2 Followup-For: Bug #727707 The attached patch taken from upstream fixes this problem.
The symptoms described in #728430 are similar to what I see without this patch (virt-viewer and spicy crashing just after connecting). But from the backtrace alone I'm not sure if these bugs are really duplicates. Gaudenz -- System Information: Debian Release: jessie/sid APT prefers testing APT policy: (800, 'testing'), (700, 'unstable'), (50, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.10-2-amd64 (SMP w/2 CPU cores) Locale: LANG=de_CH.UTF-8, LC_CTYPE=de_CH.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages spice-client-gtk depends on: ii libatk1.0-0 2.10.0-2 ii libc6 2.17-93 ii libcairo2 1.12.16-2 ii libfontconfig1 2.11.0-1 ii libfreetype6 2.4.9-1.1 ii libgdk-pixbuf2.0-0 2.28.2-1 ii libglib2.0-0 2.36.4-1 ii libgtk2.0-0 2.24.21-1 ii libjpeg8 8d-1 ii libpango-1.0-0 1.32.5-5+b1 ii libpangocairo-1.0-0 1.32.5-5+b1 ii libpangoft2-1.0-0 1.32.5-5+b1 ii libpixman-1-0 0.30.2-1 ii libpulse-mainloop-glib0 4.0-6+b1 ii libpulse0 4.0-6+b1 ii libsasl2-2 2.1.25.dfsg1-17 ii libspice-client-glib-2.0-8 0.21-0nocelt2 ii libspice-client-gtk-2.0-4 0.21-0nocelt2 ii libssl1.0.0 1.0.1e-4 ii libusb-1.0-0 2:1.0.17-1+b1 ii libusbredirhost1 0.6-2 ii libusbredirparser1 0.6-2 ii libx11-6 2:1.6.2-1 ii libxrandr2 2:1.4.1-1 ii zlib1g 1:1.2.8.dfsg-1 spice-client-gtk recommends no packages. spice-client-gtk suggests no packages. -- no debconf information
>From bdd625943aa555ab2485ec5ddb06bebde0ef0a38 Mon Sep 17 00:00:00 2001 From: Gaudenz Steinlin <gaud...@debian.org> Date: Fri, 18 Oct 2013 17:39:10 +0200 Subject: [PATCH] Add fix for palette regression See: http://lists.freedesktop.org/archives/spice-devel/2013-October/014717.html https://bugzilla.redhat.com/show_bug.cgi?id=1011936 --- debian/patches/palette-regression.patch | 39 +++++++++++++++++++++++++++++++++ debian/patches/series | 1 + 2 files changed, 40 insertions(+) create mode 100644 debian/patches/palette-regression.patch diff --git a/debian/patches/palette-regression.patch b/debian/patches/palette-regression.patch new file mode 100644 index 0000000..fb056c9 --- /dev/null +++ b/debian/patches/palette-regression.patch @@ -0,0 +1,39 @@ +palette_get() used to return a ref, and palette_release() used to +release that ref. + +Since ed877341, the palette is no longer refcount'ed, since its usage is +exclusively local in common/canvas code. + +palette_release() shouldn't remove the palette from the cache. + +https://bugzilla.redhat.com/show_bug.cgi?id=1011936 +--- + gtk/channel-display.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/gtk/channel-display.c b/gtk/channel-display.c +index 794f4eb..e0f17eb 100644 +--- a/gtk/channel-display.c ++++ b/gtk/channel-display.c +@@ -546,8 +546,8 @@ static SpicePalette *palette_get(SpicePaletteCache *cache, uint64_t id) + SPICE_CONTAINEROF(cache, SpiceDisplayChannelPrivate, palette_cache); + + /* here the returned pointer is weak, no ref given to caller. it +- * seems spice canvas usage is exclusively temporary, so it's ok +- * (for now) */ ++ * seems spice canvas usage is exclusively temporary, so it's ok. ++ * palette_release is a noop. */ + return cache_find(c->palettes, id); + } + +@@ -561,7 +561,7 @@ static void palette_remove(SpicePaletteCache *cache, uint32_t id) + + static void palette_release(SpicePaletteCache *cache, SpicePalette *palette) + { +- palette_remove(cache, palette->unique); ++ /* there is no refcount of palette, see palette_get() */ + } + + #ifdef SW_CANVAS_CACHE +-- +1.8.3.1 diff --git a/debian/patches/series b/debian/patches/series index 66d9efe..387c473 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -2,3 +2,4 @@ make-celt-to-be-optional.patch explicitly-enable-subdir-objects.patch remove-srcdir-or-top-srcdir-in-makefile-am.patch fix-usbredir-being-broken-since-commit-159c6ebf.patch +palette-regression.patch -- 1.8.4.rc3