From 1a1ed818f4d5c7c62745f76e51849de68ef8f4b8 Mon Sep 17 00:00:00 2001 From: Ward Wouts Date: Tue, 1 Feb 2005 09:33:56 +0000 Subject: [PATCH] cleaner lock file checking, don't use 'ps' --- trunk/ripnews/ripnews.rb | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/trunk/ripnews/ripnews.rb b/trunk/ripnews/ripnews.rb index 6b2a9b8..eb902c6 100755 --- a/trunk/ripnews/ripnews.rb +++ b/trunk/ripnews/ripnews.rb @@ -1,6 +1,6 @@ #!/usr/local/bin/ruby -w -# $Dwarf: ripnews.rb,v 1.90 2005/01/30 14:47:00 ward Exp $ +# $Dwarf: ripnews.rb,v 1.91 2005/01/30 18:43:17 ward Exp $ # $Source$ # @@ -315,15 +315,15 @@ def lock if @config[group].has_key?("LOCKFILE") if FileTest.exists?(@config[group]["LOCKFILE"]) lock = File.open(@config[group]["LOCKFILE"], "r") - line = lock.gets + pid = lock.gets lock.close - if line - line.chomp! - psauxw = `ps auxw` - if /^\S+\s+#{line}\s+/.match(psauxw) + if pid + pid.chomp! + begin + Process.kill(0, pid) print "Already running, exiting...\n" exit - else + rescue Errno::ESRCH print "Stale lock found... removing...\n" File.unlink(@config[group]["LOCKFILE"]) end