summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYonit Halperin <yhalperi@redhat.com>2012-05-13 14:21:28 +0300
committerAlon Levy <alevy@redhat.com>2012-05-15 19:24:26 +0300
commit6a9f2c94539803d8263bead599139cadcbfc40c5 (patch)
treeb04e0fb9d17697448ad44b1360b3aa3dcd959575
parentd3bf13c9b4d102e0d1f1c1d51c8782569ea64a69 (diff)
downloadspice-6a9f2c94539803d8263bead599139cadcbfc40c5.tar.gz
spice-6a9f2c94539803d8263bead599139cadcbfc40c5.tar.xz
spice-6a9f2c94539803d8263bead599139cadcbfc40c5.zip
server/red_worker: don't release self_bitmap unless refcount is 0
RHBZ: 808936 (cherry picked from commit 6935bd3d604288a64f491e4226f3d31aafdbf81e)
-rw-r--r--server/red_worker.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/server/red_worker.c b/server/red_worker.c
index 387b78d6..dbe961d2 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -1680,13 +1680,12 @@ static inline void put_red_drawable(RedWorker *worker, RedDrawable *drawable, ui
{
QXLReleaseInfoExt release_info_ext;
- if (self_bitmap) {
- red_put_image(self_bitmap);
- }
if (--drawable->refs) {
return;
}
-
+ if (self_bitmap) {
+ red_put_image(self_bitmap);
+ }
worker->red_drawable_count--;
release_info_ext.group_id = group_id;
release_info_ext.info = drawable->release_info;