[Spice-devel] [spice-server 04/10] qxl: Fix guest resources release in red_put_drawable()
Christophe Fergeau
cfergeau at redhat.com
Mon Apr 16 10:13:53 UTC 2018
At the moment, we'll unconditionally release the guest QXL resources in
red_put_drawable() even if red_get_drawable() failed and did not
initialize drawable->release_info_ext properly.
This commit checks the QXLReleaseInfo in release_info_ext is non-0
before attempting to release it.
---
server/red-parse-qxl.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/server/red-parse-qxl.c b/server/red-parse-qxl.c
index dc99d1f30..80746ecbb 100644
--- a/server/red-parse-qxl.c
+++ b/server/red-parse-qxl.c
@@ -1504,7 +1504,9 @@ void red_drawable_unref(RedDrawable *red_drawable)
if (--red_drawable->refs) {
return;
}
- red_qxl_release_resource(red_drawable->qxl, red_drawable->release_info_ext);
+ if (red_drawable->release_info_ext.info != NULL) {
+ red_qxl_release_resource(red_drawable->qxl, red_drawable->release_info_ext);
+ }
red_put_drawable(red_drawable);
g_free(red_drawable);
}
--
2.14.3
More information about the Spice-devel
mailing list