diff options
author | Brendan Taylor <whateley@gmail.com> | 2010-09-27 10:41:13 -0600 |
---|---|---|
committer | Brendan Taylor <whateley@gmail.com> | 2010-09-30 09:50:04 -0600 |
commit | 5510abf69022d8393e6c5fc3d1456cc47f96fa4a (patch) | |
tree | 123d142c2c40b8cdb49946ff94fddc616b89f923 /src/callbacks.c | |
parent | 4c63d4620266ca5914587737e2af6e1b749b23f5 (diff) |
move cookie handling into a subclass of SoupCookieJar
this cleans up the code and slightly improves efficiency.
Diffstat (limited to 'src/callbacks.c')
-rw-r--r-- | src/callbacks.c | 36 |
1 files changed, 2 insertions, 34 deletions
diff --git a/src/callbacks.c b/src/callbacks.c index d2352b2..0fbf589 100644 --- a/src/callbacks.c +++ b/src/callbacks.c @@ -831,38 +831,6 @@ populate_popup_cb(WebKitWebView *v, GtkMenu *m, void *c) { } void -save_cookies_js(SoupCookieJar *jar, SoupCookie *old_cookie, SoupCookie *new_cookie, gpointer user_data) { - (void) jar; - (void) user_data; - (void) old_cookie; - char *scheme; - GString *s; - - if(new_cookie != NULL) { - scheme = (new_cookie->secure == TRUE) ? "https" : "http"; - - s = g_string_new(""); - g_string_printf(s, "PUT '%s' '%s' '%s' '%s=%s'", scheme, new_cookie->domain, new_cookie->path, new_cookie->name, new_cookie->value); - run_handler(uzbl.behave.cookie_handler, s->str); - g_string_free(s, TRUE); - } -} - -void -save_cookies_http(SoupMessage *msg, gpointer user_data) { - (void) user_data; - GSList *ck; - char *cookie; - - for(ck = soup_cookies_from_response(msg); ck; ck = ck->next){ - cookie = soup_cookie_to_set_cookie_header(ck->data); - SoupURI *soup_uri = soup_message_get_uri(msg); - GString *s = g_string_new(""); - g_string_printf(s, "PUT '%s' '%s' '%s' '%s'", soup_uri->scheme, soup_uri->host, soup_uri->path, cookie); - run_handler(uzbl.behave.cookie_handler, s->str); - g_free (cookie); - g_string_free(s, TRUE); - } - - g_slist_free(ck); +cmd_set_cookie_handler() { + uzbl_cookie_jar_set_handler(uzbl.net.soup_cookie_jar, uzbl.behave.cookie_handler); } |