Author: spadkins
Date: Mon Feb 5 12:52:08 2007
New Revision: 8800
Modified:
p5ee/trunk/App-Widget/lib/App/Widget/Graph.pm
Log:
Replace undef with 0 for ->{y}. Segmentation fault was occuring.
Modified: p5ee/trunk/App-Widget/lib/App/Widget/Graph.pm
==============================================================================
--- p5ee/trunk/App-Widget/lib/App/Widget/Graph.pm (original)
+++ p5ee/trunk/App-Widget/lib/App/Widget/Graph.pm Mon Feb 5 12:52:08 2007
@@ -220,7 +220,7 @@
#print STDERR " row {", join("|", %{$objects->[0]}), "]\n";
}
- my (@x, @yn, $object, $column);
+ my (@x, @yn, $object, $column, $x, $yn);
my ($label);
my $data_dims = ($#$keys + 1) + $column_dims;
@@ -232,6 +232,15 @@
$yn[$j][$i] = $object->{$column};
}
}
+
+ for ($yn = 0; $yn <= $#yn; $yn ++) {
+ for ($x = 0; $x <= $#x; $x ++) {
+ if (! defined $yn[$yn][$x]) {
+ $yn[$yn][$x] = 0;
+ }
+ }
+ }
+
$spec->{y} = [EMAIL PROTECTED];
if ($column_dims) {
@@ -269,6 +278,7 @@
$label =~ s/<br>//g;
$spec->{x_title} = $label if (!$spec->{x_title});
my (@x, %x_idx, $x_value, @y, %y_idx, $y_value);
+
foreach my $object (@$objects) {
$x_value = $object->{$x_column};
$y_value = $object->{$y_column};
@@ -282,11 +292,21 @@
}
$yn[$y_idx{$y_value}][$x_idx{$x_value}] = $object->{$column};
}
+
+ for ($yn = 0; $yn <= $#yn; $yn ++) {
+ for ($x = 0; $x <= $#x; $x ++) {
+ if (! defined $yn[$yn][$x]) {
+ $yn[$yn][$x] = 0;
+ }
+ }
+ }
+
$spec->{x} = [EMAIL PROTECTED];
$spec->{y} = [EMAIL PROTECTED];
$spec->{y_labels} = [EMAIL PROTECTED];
}
+
&App::sub_exit() if ($App::trace);
}