Blob Blame History Raw
From fc813bcf566e0ca1ccfff83e7e6f360647066768 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Thu, 9 Jul 2015 15:32:19 +0200
Subject: [PATCH] lib: fix a SEGV in list_possible_events()

The bug has been introduced in
commit fc028b3417349fd60a2ddd1aff1127a417df512b

Related: #1224984

Fixes: rhbz#1733515

Signed-off-by: Jakub Filak <jfilak@redhat.com>
(cherry picked from commit 38a8c2fb2b4a46a35899f6b1066ec65ef155eeac)
---
 src/lib/run_event.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/lib/run_event.c b/src/lib/run_event.c
index 64c7a303..077ae189 100644
--- a/src/lib/run_event.c
+++ b/src/lib/run_event.c
@@ -417,7 +417,11 @@ static char* pop_next_command(GList **pp_rule_list,
                 if (pd == NULL)
                     free_me = real_val = dd_load_text_ext(dd, var_name, DD_FAIL_QUIETLY_ENOENT);
                 else
+                {
                     real_val = problem_data_get_content_or_NULL(pd, var_name);
+                    if (real_val == NULL)
+                        free_me = real_val = xstrdup("");
+                }
                 free(var_name);
                 int vals_differ = regex ? regcmp_lines(real_val, eq_sign + 1) : strcmp(real_val, eq_sign + 1);
                 free(free_me);
-- 
2.21.0