summaryrefslogtreecommitdiff
path: root/desktop/hotlist.c
diff options
context:
space:
mode:
authorVincent Sanders <vince@netsurf-browser.org>2013-05-03 21:17:11 +0100
committerVincent Sanders <vince@netsurf-browser.org>2013-05-03 21:17:11 +0100
commit5c57a30047b4c9330110e5de9f5f406571f9baf1 (patch)
tree019aa80504701b34e2cca51913c5625c0999b6fc /desktop/hotlist.c
parent6c7ca26bdc88ac95feb53b647c1c3b33f602f04c (diff)
downloadnetsurf-5c57a30047b4c9330110e5de9f5f406571f9baf1.tar.gz
netsurf-5c57a30047b4c9330110e5de9f5f406571f9baf1.tar.bz2
cleanup title string ownership madness in the tree_create_folder_node() API
Diffstat (limited to 'desktop/hotlist.c')
-rw-r--r--desktop/hotlist.c40
1 files changed, 17 insertions, 23 deletions
diff --git a/desktop/hotlist.c b/desktop/hotlist.c
index e2386fc8e..20cc8ea26 100644
--- a/desktop/hotlist.c
+++ b/desktop/hotlist.c
@@ -121,7 +121,6 @@ bool hotlist_initialise(struct tree *tree, const char *hotlist_path,
{
struct node *node;
const struct url_data *url_data;
- char *name;
int hlst_loop;
/* Either load or create a hotlist */
@@ -143,18 +142,15 @@ bool hotlist_initialise(struct tree *tree, const char *hotlist_path,
return true;
}
-
/* failed to load hotlist file, use default list */
- name = strdup("NetSurf");
- if (name == NULL) {
- LOG(("malloc failed"));
- warn_user("NoMemory", 0);
- return false;
- }
- node = tree_create_folder_node(hotlist_tree, hotlist_tree_root,
- name, true, false, false);
+ node = tree_create_folder_node(hotlist_tree,
+ hotlist_tree_root,
+ messages_get("NetSurf"),
+ true,
+ false,
+ false);
if (node == NULL) {
- free(name);
+ warn_user(messages_get_errorcode(NSERROR_NOMEM), 0);
return false;
}
@@ -373,14 +369,7 @@ void hotlist_collapse_addresses(void)
void hotlist_add_folder(bool selected)
{
struct node *node, *parent = NULL;
- struct node_element *element;
- char *title = strdup("Untitled");
- if (title == NULL) {
- LOG(("malloc failed"));
- warn_user("NoMemory", 0);
- return;
- }
creating_node = true;
if (selected == true) {
@@ -394,16 +383,21 @@ void hotlist_add_folder(bool selected)
parent = tree_get_default_folder_node(hotlist_tree);
}
- node = tree_create_folder_node(hotlist_tree, parent, title,
- true, false, false);
+ node = tree_create_folder_node(hotlist_tree,
+ parent,
+ messages_get("Untitled"),
+ true,
+ false,
+ false);
if (node == NULL) {
- free(title);
+ warn_user(messages_get_errorcode(NSERROR_NOMEM), 0);
return;
}
+
tree_set_node_user_callback(node, hotlist_node_callback, NULL);
tree_set_node_icon(hotlist_tree, node, folder_icon);
- element = tree_node_find_element(node, TREE_ELEMENT_TITLE, NULL);
- tree_start_edit(hotlist_tree, element);
+ tree_start_edit(hotlist_tree,
+ tree_node_find_element(node, TREE_ELEMENT_TITLE, NULL));
}
/**