aboutsummaryrefslogtreecommitdiff
path: root/lockfiles.lua
diff options
context:
space:
mode:
authorAlin Mr <almr.oss@outlook.com>2024-05-03 13:22:51 +0000
committerFlorian Fischer <florian.fischer@muhq.space>2024-05-03 17:17:23 +0200
commit526873bef425574974358b7f26975cdd7d7cdd1b (patch)
tree43a5aca3cc031b5c05e20e2795632a3ec7e826c3 /lockfiles.lua
parentd65d6c542c8d55b8e8d00880e47fb2d3f7d8cef4 (diff)
downloadvis-lockfiles-526873bef425574974358b7f26975cdd7d7cdd1b.tar.gz
vis-lockfiles-526873bef425574974358b7f26975cdd7d7cdd1b.zip
show locking pid on conflict; clearer prompt
Diffstat (limited to 'lockfiles.lua')
-rw-r--r--lockfiles.lua12
1 files changed, 7 insertions, 5 deletions
diff --git a/lockfiles.lua b/lockfiles.lua
index d018bc9..e223e10 100644
--- a/lockfiles.lua
+++ b/lockfiles.lua
@@ -45,11 +45,14 @@ do
end
assert(vis_pid)
+-- returns PID owning lock (possibly vis_pid)
local function create_lock_file(lock_dir, lfile_path)
+ local lock_pid
local lock_file = io.open(lfile_path)
if lock_file then
+ lock_pid = lock_file:read('*n')
lock_file:close()
- return false
+ return lock_pid
end
-- create the lock file with our pid
@@ -64,11 +67,9 @@ local function create_lock_file(lock_dir, lfile_path)
-- detect a possible race
lock_file = assert(io.open(lfile_path))
- local lock_pid = lock_file:read('*n')
+ lock_pid = tonumber(lock_file:read('*n'))
lock_file:close()
- local locked = tonumber(lock_pid) == vis_pid
-
- return locked
+ return lock_pid
end
local function delete_lock_file(lfile_path)
@@ -79,6 +80,7 @@ local function delete_lock_file(lfile_path)
end
return {
+ vis_pid = vis_pid,
capture_cmd = capture_cmd,
lock_file_path = lock_file_path,
delete_lock_file = delete_lock_file,