summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--surf.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/surf.c b/surf.c
index 989cc51..74a2d55 100644
--- a/surf.c
+++ b/surf.c
@@ -26,6 +26,7 @@ typedef struct Client {
gint progress;
struct Client *next;
} Client;
+SoupCookieJar *cookiejar;
Client *clients = NULL;
gboolean embed = FALSE;
gboolean showxid = FALSE;
@@ -429,8 +430,10 @@ updatetitle(Client *c) {
int main(int argc, char *argv[]) {
gchar *uri = NULL, *file = NULL;
+ SoupSession *s;
Client *c;
int o;
+ const gchar *home, *filename;
gtk_init(NULL, NULL);
if (!g_thread_supported())
@@ -472,6 +475,14 @@ int main(int argc, char *argv[]) {
goto argerr;
if(!clients)
newclient();
+
+ /* cookie persistance */
+ s = webkit_get_default_session();
+ home = g_get_home_dir();
+ filename = g_build_filename(home, ".surf-cookies", NULL);
+ cookiejar = soup_cookie_jar_text_new(filename, FALSE);
+ soup_session_add_feature(s, SOUP_SESSION_FEATURE(cookiejar));
+
gtk_main();
cleanup();
return EXIT_SUCCESS;