diff options
Diffstat (limited to 'desktop/cookies.c')
-rw-r--r-- | desktop/cookies.c | 35 |
1 files changed, 12 insertions, 23 deletions
diff --git a/desktop/cookies.c b/desktop/cookies.c index 581e1cc5b..539be3e2f 100644 --- a/desktop/cookies.c +++ b/desktop/cookies.c @@ -329,44 +329,33 @@ static void cookies_schedule_callback(const void *scheduled_data) const struct cookie_data *data = scheduled_data; struct node *node = NULL; struct node *cookie_node = NULL; - char *domain_cp; assert(data != NULL); node = cookies_find(cookies_tree_root, data->domain); if (node == NULL) { - domain_cp = strdup(data->domain); - if (domain_cp == NULL) { - LOG(("malloc failed")); - warn_user("NoMemory", 0); - return; - } - /* ownership of domain_cp passed to tree, if node creation - * does not fail */ node = tree_create_folder_node(cookies_tree, - cookies_tree_root, domain_cp, + cookies_tree_root, + data->domain, false, false, false); if (node != NULL) { - tree_set_node_user_callback(node, cookies_node_callback, + tree_set_node_user_callback(node, + cookies_node_callback, NULL); tree_set_node_icon(cookies_tree, node, folder_icon); - - } else { - free(domain_cp); } } - if (node == NULL) - return; - - cookie_node = cookies_find(node, data->name); - if (cookie_node == NULL) - cookies_create_cookie_node(node, data); - else - cookies_update_cookie_node(cookie_node, data); + if (node != NULL) { + cookie_node = cookies_find(node, data->name); + if (cookie_node == NULL) { + cookies_create_cookie_node(node, data); + } else { + cookies_update_cookie_node(cookie_node, data); + } - return; + } } /** |