[Spice-devel] [spice-server PATCH 3/4] dcc_gl_draw_item_new: allocate item when needed
Uri Lublin
uril at redhat.com
Wed Sep 14 12:31:01 UTC 2016
Prevents a leak on early return.
Found by coverity.
Signed-off-by: Uri Lublin <uril at redhat.com>
---
server/dcc.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/server/dcc.c b/server/dcc.c
index cdd888b..2587d72 100644
--- a/server/dcc.c
+++ b/server/dcc.c
@@ -591,7 +591,7 @@ RedPipeItem *dcc_gl_draw_item_new(RedChannelClient *rcc, void *data, int num)
{
DisplayChannelClient *dcc = DISPLAY_CHANNEL_CLIENT(rcc);
const SpiceMsgDisplayGlDraw *draw = data;
- RedGlDrawItem *item = spice_new(RedGlDrawItem, 1);
+ RedGlDrawItem *item;
if (!red_channel_client_test_remote_cap(rcc, SPICE_DISPLAY_CAP_GL_SCANOUT)) {
spice_printerr("FIXME: client does not support GL scanout");
@@ -600,6 +600,7 @@ RedPipeItem *dcc_gl_draw_item_new(RedChannelClient *rcc, void *data, int num)
}
dcc->priv->gl_draw_ongoing = TRUE;
+ item = spice_new(RedGlDrawItem, 1);
item->draw = *draw;
red_pipe_item_init(&item->base, RED_PIPE_ITEM_TYPE_GL_DRAW);
--
2.7.4
More information about the Spice-devel
mailing list