From 21642f4f6a9e51d508d05aa003d3de112af7cdf2 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Fri, 10 Jan 2020 03:26:57 +0000 Subject: [PATCH] LIST: Fix case numbering. Case numbering was wrong when a starting case or a step was specified. Bug #57534. --- src/language/data-io/list.c | 5 +++-- tests/language/data-io/list.at | 8 ++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/language/data-io/list.c b/src/language/data-io/list.c index 920d66e322..d9798852c1 100644 --- a/src/language/data-io/list.c +++ b/src/language/data-io/list.c @@ -113,11 +113,12 @@ list_execute (const struct lst_cmd *lcmd, struct dataset *ds) else cases->hide_all_labels = true; - casenumber case_num = 1; + casenumber case_num = lcmd->first; for (; (c = casereader_read (group)) != NULL; case_unref (c)) { int case_idx = pivot_category_create_leaf ( - cases->root, pivot_value_new_integer (case_num++)); + cases->root, pivot_value_new_integer (case_num)); + case_num += lcmd->step; for (int i = 0; i < lcmd->n_variables; i++) pivot_table_put2 (table, i, case_idx, diff --git a/tests/language/data-io/list.at b/tests/language/data-io/list.at index bc44cd592a..35acbbec77 100644 --- a/tests/language/data-io/list.at +++ b/tests/language/data-io/list.at @@ -76,6 +76,7 @@ AT_DATA([list.sps], [dnl DATA LIST FILE='data.txt'/avar 1-5 bvar 6-10. WEIGHT BY bvar. LIST/FORMAT NUMBERED. +LIST/FORMAT NUMBERED/CASES FROM 2 TO 9 BY 2. ]) AT_CHECK([pspp -o pspp.csv list.sps]) AT_CHECK([cat pspp.csv], [0], [dnl @@ -97,6 +98,13 @@ Case Number,avar,bvar 9,26,30 10,27,21 11,28,23 + +Table: Data List +Case Number,avar,bvar +2,19,7 +4,21,76 +6,23,58 +8,25,38 ]) AT_CLEANUP -- 2.30.2