Fix double counting of accounts by type in output.

        Patch by afuna. 

diffs (21 lines):

diff -r 13b9b8990773 -r f1b881e72e8d cgi-bin/DW/StatData/AccountsByType.pm
--- a/cgi-bin/DW/StatData/AccountsByType.pm     Wed Nov 25 04:06:39 2009 +0000
+++ b/cgi-bin/DW/StatData/AccountsByType.pm     Wed Nov 25 04:18:51 2009 +0000
@@ -66,10 +66,13 @@ sub collect {
 =cut
 
 sub data {
-    my $self = shift;
-    my $data = $self->{data};
-    $data->{total} = 0;
-    $data->{total} += $data->{$_} foreach keys %$data;
+    my $data = $_[0]->{data};
+    # don't double-calculate the total
+    return $data if $data->{total};
+
+    my $total = 0;
+    $total += $data->{$_} foreach keys %$data;
+    $data->{total} = $total;
     return $data;
 }
 
_______________________________________________
dw-changelog mailing list
[email protected]
http://lists.dwscoalition.org/mailman/listinfo/dw-changelog

Reply via email to