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/hotlist.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/hotlist.c')
-rw-r--r-- | desktop/hotlist.c | 40 |
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)); } /** |