X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=BrowserWindow.vala;h=7cfbdcd5891c05a32bcb03846e670746f6e45a27;hb=0e5193e6109c8f251dcb4b9f0e9ee07ff6dd664e;hp=0feb6336be8f15a8bd2b5203f03bed265da486c9;hpb=e666b313789391ab06509839f919952e1307653d;p=app.webkitpdf diff --git a/BrowserWindow.vala b/BrowserWindow.vala index 0feb633..7cfbdcd 100644 --- a/BrowserWindow.vala +++ b/BrowserWindow.vala @@ -61,16 +61,14 @@ public class BrowserWindow : Object string[] cookies = webkitpdf.opt_cookies.split ("=", 2); - if(cookies.length > 1 ) { -#if GTK3 + if(cookies.length > 1 ) { + + #if GTK3 var context = WebKit.WebContext.get_default(); var cookie_manager = context.get_cookie_manager(); cookie_manager.set_accept_policy(WebKit.CookieAcceptPolicy.NEVER); string scheme = uri.get_scheme (); - var ssl = "FALSE"; - if (scheme=="https") { - ssl="TRUE"; - } + try { FileIOStream iostream; File file = File.new_tmp ("cookie-XXXXXX.txt", out iostream); @@ -79,19 +77,19 @@ public class BrowserWindow : Object OutputStream ostream = iostream.output_stream; DataOutputStream dostream = new DataOutputStream (ostream); - - dostream.put_string (uri.get_host() + "\tTRUE\t/\t"+ssl+"\t2147483647\t" + cookies[0] + "\t" + cookies[1] ); + dostream.put_string ("%s\tTRUE\t/\t%s\t2147483647\t%s\t%s".printf(uri.get_host(),scheme == "http" ? "FALSE" : "TRUE",cookies[0],cookies[1])); cookie_manager.set_persistent_storage(file.get_path(), WebKit.CookiePersistentStorage.TEXT); } catch (Error e) { stdout.printf ("Error: %s\n", e.message); } -#else + #else var sess = WebKit.get_default_session(); var cookie_jar = new Soup.CookieJar(); cookie_jar.set_accept_policy(Soup.CookieJarAcceptPolicy.NEVER); cookie_jar.add_cookie(new Soup.Cookie (cookies[0], cookies[1], uri.get_host(), "/", -1)); sess.add_feature(cookie_jar); -#endif + #endif + } @@ -176,6 +174,7 @@ public class BrowserWindow : Object // set gobject values // init method + { this.load_try = 0; @@ -421,15 +420,19 @@ public class BrowserWindow : Object } public void delete_cookiefile () { - print("deleting tmp file %s\n",_this.cookie_file); - File file = File.new_for_path (_this.cookie_file); - try { - if (file.query_exists () == true) { - file.delete (); + // _this -> owner BrowserWindow + // cookie_file is created by BrowserWindow + if(_this.cookie_file.length >0 ){ + print("deleting tmp file %s\n",_this.cookie_file); + File file = File.new_for_path (_this.cookie_file); + try { + if (file.query_exists () == true) { + file.delete (); + } + } catch (Error e) { + stdout.printf ("Error: %s\n", e.message); } - } catch (Error e) { - stdout.printf ("Error: %s\n", e.message); - } + } } }