diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-03-23 07:51:52 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-03-23 07:51:52 +0000 |
commit | 384327bfd0b3b0362a61f30f81b06895238ee360 (patch) | |
tree | 771eaedb0a9d2d572c06d78fb15d7d17608eeca3 | |
parent | bb0193aff3e044e93006ee7ad0aaef1a82adaeee (diff) |
proper main sub and loadindex optimisation for cgis
-rw-r--r-- | IkiWiki/CGI.pm | 3 | ||||
-rwxr-xr-x | ikiwiki | 51 |
2 files changed, 30 insertions, 24 deletions
diff --git a/IkiWiki/CGI.pm b/IkiWiki/CGI.pm index 3ac984d30..4a16856ec 100644 --- a/IkiWiki/CGI.pm +++ b/IkiWiki/CGI.pm @@ -271,6 +271,8 @@ sub cgi_editpage ($$) { #{{{ my $q=shift; my $session=shift; + loadindex(); + eval q{use CGI::FormBuilder}; my $form = CGI::FormBuilder->new( fields => [qw(do rcsinfo from page content comments)], @@ -446,7 +448,6 @@ sub cgi_editpage ($$) { #{{{ } else { require IkiWiki::Render; - loadindex(); refresh(); saveindex(); } @@ -424,26 +424,31 @@ sub globlist_match ($$) { #{{{ return 0; } #}}} -# main {{{ -if ($config{setup}) { - require IkiWiki::Setup; - setup(); -} -lockwiki(); -if ($config{wrapper}) { - require IkiWiki::Wrapper; - gen_wrapper(); - exit; -} -loadindex() unless $config{rebuild}; -if ($config{cgi}) { - require IkiWiki::CGI; - cgi(); -} -else { - require IkiWiki::Render; - rcs_update(); - refresh(); - saveindex(); -} -#}}} +sub main () { #{{{ + if ($config{setup}) { + require IkiWiki::Setup; + setup(); + } + + lockwiki(); + + if ($config{wrapper}) { + require IkiWiki::Wrapper; + gen_wrapper(); + exit; + } + + if ($config{cgi}) { + require IkiWiki::CGI; + cgi(); + } + else { + loadindex() unless $config{rebuild}; + require IkiWiki::Render; + rcs_update(); + refresh(); + saveindex(); + } +} #}}} + +main; |