From 0796f343ee20e41247358a706856320a791751a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Helleu?= Date: Fri, 23 Jan 2015 21:21:39 +0100 Subject: [PATCH] core: fix crash when a root bar has conditions different from active/inactive/nicklist (closes #317) (cherry picked from commit ed9e146e46f157895954b807a332ef6b19044e8f) --- ChangeLog.asciidoc | 2 ++ src/gui/gui-bar.c | 7 ++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ChangeLog.asciidoc b/ChangeLog.asciidoc index 11fdf3d3a..1b21b6548 100644 --- a/ChangeLog.asciidoc +++ b/ChangeLog.asciidoc @@ -17,6 +17,8 @@ https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes] === Bugs fixed +* core: fix crash when a root bar has conditions different from + active/inactive/nicklist (closes #317) * irc: fix /join on a channel buffer opened with autojoin but which failed to join * irc: send QUIT to server and no PART for channels when the server buffer diff --git a/src/gui/gui-bar.c b/src/gui/gui-bar.c index 121041422..f71bc8147 100644 --- a/src/gui/gui-bar.c +++ b/src/gui/gui-bar.c @@ -402,7 +402,7 @@ gui_bar_check_conditions (struct t_gui_bar *bar, } else if (string_strcasecmp (conditions, "nicklist") == 0) { - if (window->buffer && !window->buffer->nicklist) + if (window && window->buffer && !window->buffer->nicklist) return 0; } else if (conditions[0]) @@ -415,7 +415,8 @@ gui_bar_check_conditions (struct t_gui_bar *bar, if (pointers) { hashtable_set (pointers, "window", window); - hashtable_set (pointers, "buffer", window->buffer); + if (window) + hashtable_set (pointers, "buffer", window->buffer); } extra_vars = hashtable_new (32, WEECHAT_HASHTABLE_STRING, @@ -429,7 +430,7 @@ gui_bar_check_conditions (struct t_gui_bar *bar, hashtable_set (extra_vars, "inactive", (gui_current_window && (gui_current_window != window)) ? "1" : "0"); hashtable_set (extra_vars, "nicklist", - (window->buffer && window->buffer->nicklist) ? "1" : "0"); + (window && window->buffer && window->buffer->nicklist) ? "1" : "0"); } options = hashtable_new (32, WEECHAT_HASHTABLE_STRING,