aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-11-20 12:03:35 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-11-20 12:03:35 +0000
commitd389b0e4a45ebd88705f3bb95bf2e19e10e6ca2a (patch)
tree0284b2d889fea8586b8fff4bd440376b9319d863 /IkiWiki
parent55aae671ad28ea75263125baea2468641583744d (diff)
downloadikiwiki-d389b0e4a45ebd88705f3bb95bf2e19e10e6ca2a.tar
ikiwiki-d389b0e4a45ebd88705f3bb95bf2e19e10e6ca2a.tar.gz
* Avoid locking the wiki at all when handling some basic cgi stuff
(searches, recentchanges).
Diffstat (limited to 'IkiWiki')
-rw-r--r--IkiWiki/CGI.pm5
1 files changed, 3 insertions, 2 deletions
diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm
index 53237bcdb..14861e398 100644
--- a/IkiWiki/CGI.pm
+++ b/IkiWiki/CGI.pm
@@ -67,8 +67,6 @@ sub decode_form_utf8 ($) { #{{{
sub cgi_recentchanges ($) { #{{{
my $q=shift;
- unlockwiki();
-
# Optimisation: building recentchanges means calculating lots of
# links. Memoizing htmllink speeds it up a lot (can't be memoized
# during page builds as the return values may change, but they
@@ -715,6 +713,9 @@ sub cgi (;$$) { #{{{
elsif ($do eq 'hyperestraier') {
cgi_hyperestraier();
}
+
+ # Need to lock the wiki before getting a session.
+ lockwiki();
if (! $session) {
CGI::Session->name("ikiwiki_session_".encode_utf8($config{wikiname}));