X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Foutput%2Fcharts%2Fboxplot.c;h=0a933195d04e59adbab217c5e52ed6743d41d0e0;hb=656e46ed80e20bf34312f01607a7bebdd2d8d622;hp=7e9248004b3c2b2662f684241e55ab06b865b0c4;hpb=dfd1972f7bcb550a4fc3b05dbe7e71d12334b0a7;p=pspp diff --git a/src/output/charts/boxplot.c b/src/output/charts/boxplot.c index 7e9248004b..0a933195d0 100644 --- a/src/output/charts/boxplot.c +++ b/src/output/charts/boxplot.c @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 2004, 2008, 2009 Free Software Foundation, Inc. + Copyright (C) 2004, 2008, 2009, 2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,14 +17,16 @@ #include -#include +#include "output/charts/boxplot.h" -#include -#include +#include "math/box-whisker.h" +#include "output/chart-item-provider.h" struct boxplot * boxplot_create (double y_min, double y_max, const char *title) { + if (y_min >= y_max) + return NULL; struct boxplot *boxplot = xmalloc (sizeof *boxplot); chart_item_init (&boxplot->chart_item, &boxplot_class, title); boxplot->y_min = y_min; @@ -38,6 +40,9 @@ void boxplot_add_box (struct boxplot *boxplot, struct box_whisker *bw, const char *label) { + if (boxplot == NULL) + return; + struct boxplot_box *box; if (boxplot->n_boxes >= boxplot->boxes_allocated) boxplot->boxes = x2nrealloc (boxplot->boxes, &boxplot->boxes_allocated, @@ -51,6 +56,9 @@ static void boxplot_chart_destroy (struct chart_item *chart_item) { struct boxplot *boxplot = to_boxplot (chart_item); + if (boxplot == NULL) + return; + size_t i; for (i = 0; i < boxplot->n_boxes; i++)