math: Avoid unneeded extra allocations for fixed-size data structures.
[pspp] / src / math / percentiles.c
index 2d779e5bea3408ac17c872ff56b0861c500f03d6..1b4ff136328ecdbe0ba9fb2cd1bff521519d5803 100644 (file)
 
 #include "gl/xalloc.h"
 
-#include "gettext.h"
-#define _(msgid) gettext (msgid)
-#define N_(msgid) msgid
-
 double
 percentile_calculate (const struct percentile *ptl, enum pc_alg alg)
 {
@@ -143,8 +139,6 @@ static void
 destroy (struct statistic *stat)
 {
   struct percentile *ptl = UP_CAST (stat, struct percentile, parent.parent);
-  struct order_stats *os = &ptl->parent;
-  free (os->k);
   free (ptl);
 }
 
@@ -163,7 +157,7 @@ percentile_create (double p, double W)
   ptl->w = W;
 
   os->n_k = 2;
-  os->k = xcalloc (2, sizeof (*os->k));
+  os->k = ptl->k;
   os->k[0].tc = W * p;
   os->k[1].tc = (W + 1.0) * p;