X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flanguage%2Fdictionary%2Fsys-file-info.c;h=441054e209b29b3dfdb7434038083dd6df11ce32;hb=refs%2Fbuilds%2F20120610000508%2Fpspp;hp=31a685aa824276afd1d38326140bf9cac530504d;hpb=21559edd9991628d96df331e5b391ca6bade3497;p=pspp diff --git a/src/language/dictionary/sys-file-info.c b/src/language/dictionary/sys-file-info.c index 31a685aa82..441054e209 100644 --- a/src/language/dictionary/sys-file-info.c +++ b/src/language/dictionary/sys-file-info.c @@ -377,12 +377,15 @@ static void display_attributes (struct tab_table *t, const struct attrset *set, int flags, int c, int r) { - struct attrset_iterator i; - struct attribute *attr; + struct attribute **attrs; + size_t n_attrs; + size_t i; - for (attr = attrset_first (set, &i); attr != NULL; - attr = attrset_next (set, &i)) + n_attrs = attrset_count (set); + attrs = attrset_sorted (set); + for (i = 0; i < n_attrs; i++) { + const struct attribute *attr = attrs[i]; const char *name = attribute_get_name (attr); size_t n_values; size_t i; @@ -401,6 +404,7 @@ display_attributes (struct tab_table *t, const struct attrset *set, int flags, r++; } } + free (attrs); } static void