summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
authorSebastien Helleu <flashcode@flashtux.org>2010-10-31 18:19:53 +0100
committerSebastien Helleu <flashcode@flashtux.org>2010-10-31 18:19:53 +0100
commit90589b2d717cff5da6314ed38876e2517f038c22 (patch)
treeaa7816ad93707a386ef2195aeb90723050807f40 /src/gui
parent911f90e792f22989c5b41970def0302fa806d68b (diff)
downloadweechat-90589b2d717cff5da6314ed38876e2517f038c22.zip
Add extra checks on some pointers
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/gui-bar-item.c5
-rw-r--r--src/gui/gui-chat.c2
-rw-r--r--src/gui/gui-completion.c12
-rw-r--r--src/gui/gui-window.c11
4 files changed, 20 insertions, 10 deletions
diff --git a/src/gui/gui-bar-item.c b/src/gui/gui-bar-item.c
index e323e73c8..4be221727 100644
--- a/src/gui/gui-bar-item.c
+++ b/src/gui/gui-bar-item.c
@@ -296,6 +296,9 @@ gui_bar_item_get_value (const char *name, struct t_gui_bar *bar,
struct t_gui_bar_item *ptr_item;
struct t_weechat_plugin *ptr_plugin;
+ if (!name)
+ return NULL;
+
start = NULL;
end = NULL;
prefix = NULL;
@@ -303,7 +306,7 @@ gui_bar_item_get_value (const char *name, struct t_gui_bar *bar,
suffix = NULL;
ptr = name;
- while (ptr && ptr[0])
+ while (ptr[0])
{
valid_char = gui_bar_item_valid_char_name (ptr[0]);
if (!start && valid_char)
diff --git a/src/gui/gui-chat.c b/src/gui/gui-chat.c
index a14d9255a..c2568271a 100644
--- a/src/gui/gui-chat.c
+++ b/src/gui/gui-chat.c
@@ -581,7 +581,7 @@ gui_chat_printf_date_tags (struct t_gui_buffer *buffer, time_t date,
tags, pos_prefix, ptr_msg);
if (ptr_line)
{
- if (buffer->print_hooks_enabled)
+ if (buffer && buffer->print_hooks_enabled)
hook_print_exec (buffer, ptr_line);
if (ptr_line->data->displayed)
at_least_one_message_printed = 1;
diff --git a/src/gui/gui-completion.c b/src/gui/gui-completion.c
index a76331f67..7cf125d21 100644
--- a/src/gui/gui-completion.c
+++ b/src/gui/gui-completion.c
@@ -1977,10 +1977,14 @@ gui_completion_complete (struct t_gui_completion *completion)
NULL);
}
- if (completion->direction < 0)
- ptr_item = completion->completion_list->last_item;
- else
- ptr_item = completion->completion_list->items;
+ ptr_item = NULL;
+ if (completion->completion_list)
+ {
+ if (completion->direction < 0)
+ ptr_item = completion->completion_list->last_item;
+ else
+ ptr_item = completion->completion_list->items;
+ }
if (partial_completion
&& completion->word_found
diff --git a/src/gui/gui-window.c b/src/gui/gui-window.c
index 72d1ecc0d..820d3b12a 100644
--- a/src/gui/gui-window.c
+++ b/src/gui/gui-window.c
@@ -598,10 +598,13 @@ gui_window_scroll (struct t_gui_window *window, char *scroll)
ptr_line = ptr_line->next_line;
}
}
-
- old_date = ptr_line->data->date;
- date_tmp = localtime (&old_date);
- memcpy (&old_line_date, date_tmp, sizeof (struct tm));
+
+ if (ptr_line)
+ {
+ old_date = ptr_line->data->date;
+ date_tmp = localtime (&old_date);
+ memcpy (&old_line_date, date_tmp, sizeof (struct tm));
+ }
while (ptr_line)
{