diff options
author | Vincent Sanders <vince@netsurf-browser.org> | 2013-05-03 21:17:11 +0100 |
---|---|---|
committer | Vincent Sanders <vince@netsurf-browser.org> | 2013-05-03 21:17:11 +0100 |
commit | 5c57a30047b4c9330110e5de9f5f406571f9baf1 (patch) | |
tree | 019aa80504701b34e2cca51913c5625c0999b6fc /desktop/history_global_core.c | |
parent | 6c7ca26bdc88ac95feb53b647c1c3b33f602f04c (diff) | |
download | netsurf-5c57a30047b4c9330110e5de9f5f406571f9baf1.tar.gz netsurf-5c57a30047b4c9330110e5de9f5f406571f9baf1.tar.bz2 |
cleanup title string ownership madness in the tree_create_folder_node() API
Diffstat (limited to 'desktop/history_global_core.c')
-rw-r--r-- | desktop/history_global_core.c | 23 |
1 files changed, 7 insertions, 16 deletions
diff --git a/desktop/history_global_core.c b/desktop/history_global_core.c index 3222dc7b8..2a941e05d 100644 --- a/desktop/history_global_core.c +++ b/desktop/history_global_core.c @@ -175,33 +175,24 @@ static bool history_global_initialise_node(const char *title, time_t base, int days_back) { struct tm *full_time; - char *buffer; struct node *node; base += days_back * 60 * 60 * 24; if (title == NULL) { full_time = localtime(&base); - buffer = strdup(messages_get(weekday_msg_name[full_time->tm_wday])); - } else { - buffer = strdup(title); + title = messages_get(weekday_msg_name[full_time->tm_wday]); } - if (buffer == NULL) { - LOG(("malloc failed")); - warn_user("NoMemory", 0); - return false; - } - - node = tree_create_folder_node(NULL, NULL, buffer, - false, true, true); + node = tree_create_folder_node(NULL, NULL, title, false, true, true); if (node == NULL) { - LOG(("malloc failed")); - warn_user("NoMemory", 0); - free(buffer); + warn_user(messages_get_errorcode(NSERROR_NOMEM), 0); return false; } - if (folder_icon != NULL) + + if (folder_icon != NULL) { tree_set_node_icon(global_history_tree, node, folder_icon); + } + tree_set_node_user_callback(node, history_global_node_callback, NULL); global_history_base_node[global_history_base_node_count] = node; |