Changeset: 539a052040df for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=539a052040df Modified Files: gdk/gdk_aggr.c Branch: default Log Message:
Fix maintenance of whether we've seen a (non-nil) value. diffs (40 lines): diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c --- a/gdk/gdk_aggr.c +++ b/gdk/gdk_aggr.c @@ -157,7 +157,6 @@ BATgroupaggrinit(const BAT *b, const BAT const TYPE1 *vals = (const TYPE1 *) values; \ if (ngrp == 1 && cand == NULL) { \ TYPE2 sum; \ - int seenval; \ ALGODEBUG fprintf(stderr, \ "#%s: no candidates, no groups; " \ "start " BUNFMT ", end " BUNFMT \ @@ -165,7 +164,7 @@ BATgroupaggrinit(const BAT *b, const BAT func, start, end, nonil); \ sum = 0; \ if (nonil) { \ - seenval = start < end; \ + *seen = start < end; \ for (i = start; i < end && nils == 0; i++, vals++) { \ x = *vals; \ ADD_WITH_CHECK(TYPE1, x, \ @@ -174,7 +173,7 @@ BATgroupaggrinit(const BAT *b, const BAT goto overflow); \ } \ } else { \ - seenval = 0; \ + int seenval = 0; \ for (i = start; i < end && nils == 0; i++, vals++) { \ x = *vals; \ if (x == TYPE1##_nil) { \ @@ -190,8 +189,9 @@ BATgroupaggrinit(const BAT *b, const BAT seenval = 1; \ } \ } \ + *seen = seenval; \ } \ - if (seenval) \ + if (*seen) \ *sums = sum; \ } else if (ngrp == 1) { \ TYPE2 sum; \ _______________________________________________ checkin-list mailing list checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list