Fixed unncessary tight loop hash copy in saveindex where a pointer can be used instead. Can speed up refreshes by nearly 50% in some circumstances.

I *think* this is ok, at least it results in close to the same index being
saved as before. The difference is that plugins that have a pagestate of {}
have that recorded this way, while with the tight loop, the key for the
plugin in not copied in that case. I cannot see how this could matter.
master
Joey Hess 2013-11-16 12:28:01 -04:00
parent 38aebbdc06
commit 992d4f52ff
2 changed files with 4 additions and 5 deletions

View File

@ -1914,11 +1914,7 @@ sub saveindex () {
}
if (exists $pagestate{$page}) {
foreach my $id (@plugins) {
foreach my $key (keys %{$pagestate{$page}{$id}}) {
$index{page}{$src}{state}{$id}{$key}=$pagestate{$page}{$id}{$key};
}
}
$index{page}{$src}{state}=$pagestate{$page};
}
}

3
debian/changelog vendored
View File

@ -2,6 +2,9 @@ ikiwiki (3.20130904.2) UNRELEASED; urgency=low
* aggregate: Improve display of post author.
* poll: Fix behavior of poll buttons when inlined.
* Fixed unncessary tight loop hash copy in saveindex where a pointer
can be used instead. Can speed up refreshes by nearly 50% in some
circumstances.
-- Joey Hess <joeyh@debian.org> Thu, 05 Sep 2013 10:01:10 -0400