Blame SOURCES/0009-x11-Change-check-to-make-code-scanners-not-giving-wa.patch

5de96c
From 0b94306d2c1305aee1c56bc9f927f95371484844 Mon Sep 17 00:00:00 2001
5de96c
From: Frediano Ziglio <fziglio@redhat.com>
5de96c
Date: Sat, 20 Jul 2019 14:42:10 +0100
5de96c
Subject: [PATCH 9/9] x11: Change check to make code scanners not giving
5de96c
 warning
5de96c
5de96c
Some code scanners (both Coverity and clang one) report that
5de96c
prev_sel/prev_cond could be unreferenced while NULL.
5de96c
Change condition to make clear a NULL pointer is not used.
5de96c
5de96c
Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
5de96c
Acked-by: Victor Toso <victortoso@redhat.com>
5de96c
---
5de96c
 src/vdagent/x11.c | 6 ++----
5de96c
 1 file changed, 2 insertions(+), 4 deletions(-)
5de96c
5de96c
diff --git a/src/vdagent/x11.c b/src/vdagent/x11.c
5de96c
index 966ea62..6f83849 100644
5de96c
--- a/src/vdagent/x11.c
5de96c
+++ b/src/vdagent/x11.c
5de96c
@@ -392,7 +392,7 @@ static void vdagent_x11_set_clipboard_owner(struct vdagent_x11 *x11,
5de96c
                 once = 0;
5de96c
             }
5de96c
             vdagent_x11_send_selection_notify(x11, None, curr_sel);
5de96c
-            if (curr_sel == x11->selection_req) {
5de96c
+            if (prev_sel == NULL) {
5de96c
                 x11->selection_req = next_sel;
5de96c
                 free(x11->selection_req_data);
5de96c
                 x11->selection_req_data = NULL;
5de96c
@@ -400,7 +400,6 @@ static void vdagent_x11_set_clipboard_owner(struct vdagent_x11 *x11,
5de96c
                 x11->selection_req_data_size = 0;
5de96c
                 x11->selection_req_atom = None;
5de96c
             } else {
5de96c
-                // coverity[var_deref_op] if it is not the first there's a previous
5de96c
                 prev_sel->next = next_sel;
5de96c
             }
5de96c
             free(curr_sel);
5de96c
@@ -424,12 +423,11 @@ static void vdagent_x11_set_clipboard_owner(struct vdagent_x11 *x11,
5de96c
             if (x11->vdagentd)
5de96c
                 udscs_write(x11->vdagentd, VDAGENTD_CLIPBOARD_DATA, selection,
5de96c
                             VD_AGENT_CLIPBOARD_NONE, NULL, 0);
5de96c
-            if (curr_conv == x11->conversion_req) {
5de96c
+            if (prev_conv == NULL) {
5de96c
                 x11->conversion_req = next_conv;
5de96c
                 x11->clipboard_data_size = 0;
5de96c
                 x11->expect_property_notify = 0;
5de96c
             } else {
5de96c
-                // coverity[var_deref_op] if it is not the first there's a previous
5de96c
                 prev_conv->next = next_conv;
5de96c
             }
5de96c
             free(curr_conv);
5de96c
-- 
5de96c
2.21.0
5de96c