| timplementing naive file locking. - surf - customized build of surf, the suckle… | |
| git clone git://src.adamsgaard.dk/surf | |
| Log | |
| Files | |
| Refs | |
| README | |
| LICENSE | |
| --- | |
| commit 602eb616231b4606ca09dc2f98b1c3d22b8538d5 | |
| parent bef892f513db0e4c30ce16d7431f6773a44c1546 | |
| Author: Enno Boland (tox) <[email protected]> | |
| Date: Thu, 6 May 2010 13:58:49 +0200 | |
| implementing naive file locking. | |
| Diffstat: | |
| M surf.c | 7 +++++++ | |
| 1 file changed, 7 insertions(+), 0 deletions(-) | |
| --- | |
| diff --git a/surf.c b/surf.c | |
| t@@ -18,6 +18,7 @@ | |
| #include <webkit/webkit.h> | |
| #include <glib/gstdio.h> | |
| #include <JavaScriptCore/JavaScript.h> | |
| +#include <sys/file.h> | |
| #define LENGTH(x) (sizeof x / sizeof x[0]) | |
| #define CLEANMASK(mask) (mask & ~(GDK_MOD2_MASK)) | |
| t@@ -703,6 +704,10 @@ scroll(Client *c, const Arg *arg) { | |
| void | |
| setcookie(SoupCookie *c) { | |
| + int lock; | |
| + | |
| + lock = open(cookiefile, 0); | |
| + flock(lock, LOCK_EX); | |
| SoupDate *e; | |
| SoupCookieJar *j = soup_cookie_jar_text_new(cookiefile, FALSE); | |
| c = soup_cookie_copy(c); | |
| t@@ -712,6 +717,8 @@ setcookie(SoupCookie *c) { | |
| } | |
| soup_cookie_jar_add_cookie(j, c); | |
| g_object_unref(j); | |
| + flock(lock, LOCK_UN); | |
| + close(lock); | |
| } | |
| void |