From aa49d9ec7aaa79cc42043224386ffc30bf7c7b0f Mon Sep 17 00:00:00 2001 From: Kore Nordmann Date: Thu, 24 May 2007 12:29:24 +0000 Subject: - Fixed issue #10842: Pie charts fatal error with datasets with value sum <= 0 --- src/charts/pie.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/charts') diff --git a/src/charts/pie.php b/src/charts/pie.php index 782ad32..4d616c8 100644 --- a/src/charts/pie.php +++ b/src/charts/pie.php @@ -86,8 +86,13 @@ class ezcGraphPieChart extends ezcGraphChart // Calculate sum of all values to be able to calculate percentage $sum = 0; - foreach ( $dataset as $value ) + foreach ( $dataset as $name => $value ) { + if ( $value <= 0 ) + { + throw new ezcGraphInvalidDataException( "Values > 0 required, '$name' => '$value'." ); + } + $sum += $value; } if ( $this->options->sum !== false ) @@ -95,6 +100,11 @@ class ezcGraphPieChart extends ezcGraphChart $sum = max( $sum, $this->options->sum ); } + if ( $sum <= 0 ) + { + throw new ezcGraphInvalidDataException( "Pie charts require a value sum > 0, your value: '$sum'." ); + } + $angle = 0; foreach ( $dataset as $label => $value ) { -- cgit v1.1