summaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/amazon/carbonado/cursor/GroupedCursor.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/com/amazon/carbonado/cursor/GroupedCursor.java b/src/main/java/com/amazon/carbonado/cursor/GroupedCursor.java
index daf9419..6d9afc5 100644
--- a/src/main/java/com/amazon/carbonado/cursor/GroupedCursor.java
+++ b/src/main/java/com/amazon/carbonado/cursor/GroupedCursor.java
@@ -137,9 +137,7 @@ public abstract class GroupedCursor<S, G> extends AbstractCursor<G> {
addToGroup(groupMember);
} else {
G aggregate = finishGroup();
-
beginGroup(mGroupLeader = groupMember);
-
if (aggregate != null) {
mNextAggregate = aggregate;
return true;
@@ -150,7 +148,7 @@ public abstract class GroupedCursor<S, G> extends AbstractCursor<G> {
}
G aggregate = finishGroup();
-
+ mGroupLeader = null;
if (aggregate != null) {
mNextAggregate = aggregate;
return true;
@@ -166,6 +164,15 @@ public abstract class GroupedCursor<S, G> extends AbstractCursor<G> {
throw e;
}
+ if (mGroupLeader != null) {
+ G aggregate = finishGroup();
+ mGroupLeader = null;
+ if (aggregate != null) {
+ mNextAggregate = aggregate;
+ return true;
+ }
+ }
+
return false;
}