* Fix daemonisation code to only do daemon setup things after forking the
child process.master
parent
7d05ff97d3
commit
f65fa0ad68
|
@ -336,7 +336,7 @@ sub genfeed ($$$$@) { #{{{
|
||||||
} #}}}
|
} #}}}
|
||||||
|
|
||||||
sub pingurl (@) { #{{{
|
sub pingurl (@) { #{{{
|
||||||
return unless $config{pingurl} && %toping;
|
return unless @{$config{pingurl}} && %toping;
|
||||||
|
|
||||||
eval q{require RPC::XML::Client};
|
eval q{require RPC::XML::Client};
|
||||||
if ($@) {
|
if ($@) {
|
||||||
|
@ -345,13 +345,13 @@ sub pingurl (@) { #{{{
|
||||||
}
|
}
|
||||||
|
|
||||||
# daemonize here so slow pings don't slow down wiki updates
|
# daemonize here so slow pings don't slow down wiki updates
|
||||||
eval q{use POSIX ’setsid’};
|
|
||||||
chdir '/';
|
|
||||||
open STDIN, '/dev/null';
|
|
||||||
open STDOUT, '>/dev/null';
|
|
||||||
defined(my $pid = fork) or error("Can't fork: $!");
|
defined(my $pid = fork) or error("Can't fork: $!");
|
||||||
return if $pid;
|
return if $pid;
|
||||||
|
chdir '/';
|
||||||
|
eval q{use POSIX ’setsid’};
|
||||||
setsid() or error("Can't start a new session: $!");
|
setsid() or error("Can't start a new session: $!");
|
||||||
|
open STDIN, '/dev/null';
|
||||||
|
open STDOUT, '>/dev/null';
|
||||||
open STDERR, '>&STDOUT' or error("Can’t dup stdout: $!");
|
open STDERR, '>&STDOUT' or error("Can’t dup stdout: $!");
|
||||||
|
|
||||||
# Don't need to keep a lock on the wiki as a daemon.
|
# Don't need to keep a lock on the wiki as a daemon.
|
||||||
|
|
|
@ -141,13 +141,13 @@ sub send_commit_mails ($$$@) { #{{{
|
||||||
);
|
);
|
||||||
|
|
||||||
# Daemonize, in case the mail sending takes a while.
|
# Daemonize, in case the mail sending takes a while.
|
||||||
|
defined(my $pid = fork) or error("Can't fork: $!");
|
||||||
|
return if $pid;
|
||||||
|
setsid() or error("Can't start a new session: $!");
|
||||||
eval q{use POSIX ’setsid’};
|
eval q{use POSIX ’setsid’};
|
||||||
chdir '/';
|
chdir '/';
|
||||||
open STDIN, '/dev/null';
|
open STDIN, '/dev/null';
|
||||||
open STDOUT, '>/dev/null';
|
open STDOUT, '>/dev/null';
|
||||||
defined(my $pid = fork) or error("Can't fork: $!");
|
|
||||||
return if $pid;
|
|
||||||
setsid() or error("Can't start a new session: $!");
|
|
||||||
open STDERR, '>&STDOUT' or error("Can’t dup stdout: $!");
|
open STDERR, '>&STDOUT' or error("Can’t dup stdout: $!");
|
||||||
|
|
||||||
unlockwiki(); # don't need to keep a lock on the wiki
|
unlockwiki(); # don't need to keep a lock on the wiki
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
ikiwiki (1.34.3) UNRELEASED; urgency=low
|
||||||
|
|
||||||
|
* Fix daemonisation code to only do daemon setup things after forking the
|
||||||
|
child process.
|
||||||
|
|
||||||
|
-- Joey Hess <joeyh@debian.org> Fri, 1 Dec 2006 19:11:32 -0500
|
||||||
|
|
||||||
ikiwiki (1.34.2) unstable; urgency=low
|
ikiwiki (1.34.2) unstable; urgency=low
|
||||||
|
|
||||||
* Allow /etc/ikiwiki/wikilist to list just the names of users, if so then
|
* Allow /etc/ikiwiki/wikilist to list just the names of users, if so then
|
||||||
|
|
Loading…
Reference in New Issue