Pass along wrapper args to ikiwiki, then handle the "cvs add dir"
case with a getopt hook directly in my plugin. If the wrapper change is safe, we won't need a wrapper wrapper.master
parent
5c0e56d149
commit
524de4db26
|
@ -6,6 +6,7 @@ use strict;
|
|||
use IkiWiki;
|
||||
|
||||
sub import {
|
||||
hook(type => "getopt", id => "cvs", call => \&getopt);
|
||||
hook(type => "checkconfig", id => "cvs", call => \&checkconfig);
|
||||
hook(type => "getsetup", id => "cvs", call => \&getsetup);
|
||||
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
|
||||
|
@ -20,6 +21,13 @@ sub import {
|
|||
hook(type => "rcs", id => "rcs_getctime", call => \&rcs_getctime);
|
||||
}
|
||||
|
||||
sub getopt () {
|
||||
# "cvs add dir" acts immediately on the repository.
|
||||
# post-commit gets confused by this and doesn't need to act on it.
|
||||
# If that's why we're here, terminate the process.
|
||||
@ARGV == 3 && $ARGV[1] eq "NONE" && $ARGV[2] eq "NONE" && exit 0;
|
||||
}
|
||||
|
||||
sub checkconfig () {
|
||||
if (! defined $config{cvspath}) {
|
||||
$config{cvspath}="ikiwiki";
|
||||
|
|
|
@ -139,7 +139,7 @@ $envsave
|
|||
}
|
||||
|
||||
$pre_exec
|
||||
execl("$this", "$this", NULL);
|
||||
execv("$this", argv);
|
||||
perror("exec $this");
|
||||
exit(1);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue