summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoey Hess <joey@kodama.kitenet.net>2008-10-23 14:08:45 -0400
committerJoey Hess <joey@kodama.kitenet.net>2008-10-23 14:08:45 -0400
commit8821ba3a590ac25299f17c164f7d0755c5ea97e4 (patch)
tree9e1ea7cea3f5ff47129bf401533f6cff4f97afad
parent534f7144782ba6a453d5befed4faa7d6657d5fdc (diff)
Optimise the no-op post-commit hook in the web edit case by skipping loading plugins. (Particularly a win when using external plugins.)
-rw-r--r--debian/changelog2
-rwxr-xr-xikiwiki.in6
2 files changed, 8 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index dfc754d65..49bd85447 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -31,6 +31,8 @@ ikiwiki (2.68) UNRELEASED; urgency=low
* external: RPC functions can be injected to replace exported functions.
* Updated Spanish translation from the ever vigilant Victor Moral.
* Updated Danish translation from Jonas Smedegaard. Closes: #503117
+ * Optimise the no-op post-commit hook in the web edit case by skipping
+ loading plugins. (Particularly a win when using external plugins.)
-- Joey Hess <joeyh@debian.org> Fri, 17 Oct 2008 20:11:02 -0400
diff --git a/ikiwiki.in b/ikiwiki.in
index 4f24cfc2e..fd21b4911 100755
--- a/ikiwiki.in
+++ b/ikiwiki.in
@@ -118,6 +118,12 @@ sub getconfig () { #{{{
error("WRAPPED_OPTIONS: $@");
}
delete $ENV{WRAPPED_OPTIONS};
+
+ # optimisation for no-op post_commit
+ if ($config{post_commit} && ! commit_hook_enabled()) {
+ exit 0;
+ }
+
loadplugins();
checkconfig();
}