Bug 8178 - circ/circulation.pl under plack duplicates checkout rows
authorDobrica Pavlinusic <dpavlin@rot13.org>
Fri, 1 Jun 2012 13:22:30 +0000 (15:22 +0200)
committerPaul Poulain <paul.poulain@biblibre.com>
Sun, 10 Jun 2012 11:02:05 +0000 (13:02 +0200)
Bug 7851 introduced our scoping for vairables, unfortunatly it has
side-effect that checkout rows accumulate on page reloads instead
of being initialized to empty array (which this patch fixes)

This also fixes %renew_failed initialization on each request.

Test scenario:
1. start intranet under plack
2. open /cgi-bin/koha/circ/circulation.pl and reload page few time
   confirming that rows gets duplicated
3. apply patch and reload page to verify that it works

Signed-off-by: Alex Arnaud <alex.arnaud@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
circ/circulation.pl

index fc22271..c4001d0 100755 (executable)
@@ -94,7 +94,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user (
 my $branches = GetBranches();
 
 my @failedrenews = $query->param('failedrenew');    # expected to be itemnumbers 
-our %renew_failed;
+our %renew_failed = {};
 for (@failedrenews) { $renew_failed{$_} = 1; }
 
 my $findborrower = $query->param('findborrower');
@@ -419,10 +419,10 @@ if ($borrowernumber) {
 # make the issued books table.
 my $todaysissues = '';
 my $previssues   = '';
-our @todaysissues;
-our @previousissues;
-our @relissues;
-our @relprevissues;
+our @todaysissues   = ();
+our @previousissues = ();
+our @relissues      = ();
+our @relprevissues  = ();
 my $displayrelissues;
 
 our $totalprice = 0;