summaryrefslogtreecommitdiff
path: root/IkiWiki
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-09-16 04:09:06 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-09-16 04:09:06 +0000
commit22ddd81dd25e3dd814c38ac20b771eca05029759 (patch)
tree7c13a4e8e0fea3c1910d1e23824655d02754e630 /IkiWiki
parentefecdae0914773b224b76a4247e1aaf3fd24ee0e (diff)
* Numerous tla fixes from Clint.
Diffstat (limited to 'IkiWiki')
-rw-r--r--IkiWiki/Rcs/tla.pm14
-rw-r--r--IkiWiki/Wrapper.pm6
2 files changed, 13 insertions, 7 deletions
diff --git a/IkiWiki/Rcs/tla.pm b/IkiWiki/Rcs/tla.pm
index 7ce635c64..61f49cc1b 100644
--- a/IkiWiki/Rcs/tla.pm
+++ b/IkiWiki/Rcs/tla.pm
@@ -13,6 +13,7 @@ sub quiet_system (@) {
# See Debian bug #385939.
open (SAVEOUT, ">&STDOUT");
close STDOUT;
+ open (STDOUT, ">/dev/null");
my $ret=system(@_);
open (STDOUT, ">&SAVEOUT");
close SAVEOUT;
@@ -51,8 +52,8 @@ sub rcs_commit ($$$) { #{{{
if (defined $rev && defined $oldrev && $rev ne $oldrev) {
# Merge their changes into the file that we've
# changed.
- if (system("tla", "update", "-d",
- "$config{srcdir}/$file") != 0) {
+ if (quiet_system("tla", "update", "-d",
+ "$config{srcdir}") != 0) {
warn("tla update failed\n");
}
}
@@ -105,7 +106,7 @@ sub rcs_recentchanges ($) {
my $modfiles = $head->get("Modified-files");
my $user = $head->get("Creator");
- my @paths = grep {!/^.*\/\.arch-ids\/.*\.id$/} split(/ /,
+ my @paths = grep {!/^(.*\/\)?.arch-ids\/.*\.id$/} split(/ /,
"$newfiles $modfiles");
my $sdate = $head->get("Standard-date");
@@ -122,7 +123,6 @@ sub rcs_recentchanges ($) {
my @message;
push @message, { line => escapeHTML($summ) };
- $user = escapeHTML($user);
my @pages;
@@ -151,8 +151,8 @@ sub rcs_recentchanges ($) {
sub rcs_notify () { #{{{
# FIXME: Not set
- if (! exists $ENV{REV}) {
- error("REV is not set, not running from tla post-commit hook, cannot send notifications");
+ if (! exists $ENV{ARCH_VERSION}) {
+ error("ARCH_VERSION is not set, not running from tla post-commit hook, cannot send notifications");
}
my $rev=int(possibly_foolish_untaint($ENV{REV}));
@@ -167,7 +167,7 @@ sub rcs_notify () { #{{{
my $newfiles = $head->get("New-files");
my $modfiles = $head->get("Modified-files");
- my @changed_pages = grep {!/^.*\/\.arch-ids\/.*\.id$/} split(/ /,
+ my @changed_pages = grep {!/(^.*\/)?\.arch-ids\/.*\.id$/} split(/ /,
"$newfiles $modfiles");
if ($message =~ /$tla_webcommit/) {
diff --git a/IkiWiki/Wrapper.pm b/IkiWiki/Wrapper.pm
index 0f64a59f4..4a98af622 100644
--- a/IkiWiki/Wrapper.pm
+++ b/IkiWiki/Wrapper.pm
@@ -46,6 +46,12 @@ EOF
asprintf(&newenviron[i++], "%s=%s", "REV", s);
EOF
}
+ if ($config{rcs} eq "tla" && $config{notify}) {
+ $envsave.=<<"EOF"
+ if ((s=getenv("ARCH_VERSION")))
+ asprintf(&newenviron[i++], "%s=%s", "ARCH_VERSION", s);
+EOF
+ }
$Data::Dumper::Indent=0; # no newlines
my $configstring=Data::Dumper->Dump([\%config], ['*config']);