summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2005-11-23 20:32:14 +0000
committerLennart Poettering <lennart@poettering.net>2005-11-23 20:32:14 +0000
commit8bd358b061e86c72e49955be8bf5c4a2e15f082b (patch)
treeb0d8fcbae5bb29337b38bd2dc8aa6786239349a5
parent3971bc230008a576b9afa9eda47147d88a584776 (diff)
fix locking
git-svn-id: file:///home/lennart/svn/public/sse/trunk@45 5fbabb74-0606-0410-a5e4-b5cc6a42724e
-rwxr-xr-xfeed/sse_lock.py13
1 files changed, 6 insertions, 7 deletions
diff --git a/feed/sse_lock.py b/feed/sse_lock.py
index 8fd0459..65dfd68 100755
--- a/feed/sse_lock.py
+++ b/feed/sse_lock.py
@@ -4,25 +4,24 @@ import os, errno, time
def try_lock_file(fn):
lp = "%s.%i" % (fn, os.getpid())
-
fd = os.open(lp, os.O_RDWR|os.O_CREAT, 0666)
try:
os.link(lp, fn)
+
except OSError, e:
- os.close(fd)
- os.unlink(lp)
+ os.close(fd)
+ os.unlink(lp)
- if e.errno != errno.EEXIST:
+ if e.errno != errno.EEXIST:
raise e
return False
-
- t = os.fstat(fd)
+
os.close(fd)
os.unlink(lp)
- return t.st_nlink >= 2
+ return True
def unlock_file(fn):