diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-11-20 12:03:35 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-11-20 12:03:35 +0000 |
commit | d389b0e4a45ebd88705f3bb95bf2e19e10e6ca2a (patch) | |
tree | 0284b2d889fea8586b8fff4bd440376b9319d863 | |
parent | 55aae671ad28ea75263125baea2468641583744d (diff) |
* Avoid locking the wiki at all when handling some basic cgi stuff
(searches, recentchanges).
-rw-r--r-- | IkiWiki/CGI.pm | 5 | ||||
-rw-r--r-- | debian/changelog | 4 | ||||
-rwxr-xr-x | ikiwiki.pl | 1 |
3 files changed, 6 insertions, 4 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})); diff --git a/debian/changelog b/debian/changelog index d38152132..b622fa006 100644 --- a/debian/changelog +++ b/debian/changelog @@ -12,8 +12,10 @@ ikiwiki (1.34) UNRELEASED; urgency=low * Change how post signin actions are propigated through the signin process; they're now stored in the session. * Add optional "desc" parameter to shortcut definitions. + * Avoid locking the wiki at all when handling some basic cgi stuff + (searches, recentchanges). - -- Joey Hess <joeyh@debian.org> Mon, 20 Nov 2006 06:14:51 -0500 + -- Joey Hess <joeyh@debian.org> Mon, 20 Nov 2006 06:54:12 -0500 ikiwiki (1.33) unstable; urgency=low diff --git a/ikiwiki.pl b/ikiwiki.pl index 60ba5e182..ff1da353e 100755 --- a/ikiwiki.pl +++ b/ikiwiki.pl @@ -102,7 +102,6 @@ sub main () { #{{{ getconfig(); if ($config{cgi}) { - lockwiki(); loadindex(); require IkiWiki::CGI; cgi(); |