From 5024fb6bb69bbe8dbe9b3115f0e934d709e6598c Mon Sep 17 00:00:00 2001 From: John Darrington Date: Thu, 21 Oct 2010 22:01:34 +0200 Subject: [PATCH] Fix memory deallocation bug --- src/language/stats/runs.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/language/stats/runs.c b/src/language/stats/runs.c index 450edbf4..d27cbf40 100644 --- a/src/language/stats/runs.c +++ b/src/language/stats/runs.c @@ -186,12 +186,15 @@ runs_execute (const struct dataset *ds, subcase_init_var (&sc, var, SC_ASCEND); writer = sort_create_writer (&sc, casereader_get_proto (reader)); - for (; (c = casereader_read (reader)); case_unref (c)) + for (; (c = casereader_read (reader)); ) { const union value *val = case_data (c, var); const double w = weight ? case_data (c, weight)->f: 1.0; if ( var_is_value_missing (var, val, exclude)) - continue; + { + case_unref (c); + continue; + } cc += w; casewriter_write (writer, c); -- 2.30.2