aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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 873bde0df..22addb463 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();
}