Skip to content

Commit cfaa341

Browse files
author
Joachim Hofer
committed
simplified error handling as this is already done on the outside
1 parent 5a73924 commit cfaa341

File tree

2 files changed

+15
-30
lines changed

2 files changed

+15
-30
lines changed

rxjava-core/src/main/java/rx/operators/OperationDistinct.java

Lines changed: 8 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -120,15 +120,10 @@ public void onError(Throwable e) {
120120

121121
@Override
122122
public void onNext(T next) {
123-
try {
124-
U nextKey = keySelector.call(next);
125-
if (!emittedKeys.contains(nextKey)) {
126-
emittedKeys.add(nextKey);
127-
observer.onNext(next);
128-
}
129-
} catch (Throwable t) {
130-
// keySelector is a user function, may throw something
131-
observer.onError(t);
123+
U nextKey = keySelector.call(next);
124+
if (!emittedKeys.contains(nextKey)) {
125+
emittedKeys.add(nextKey);
126+
observer.onNext(next);
132127
}
133128
}
134129
});
@@ -172,15 +167,10 @@ public void onError(Throwable e) {
172167

173168
@Override
174169
public void onNext(T next) {
175-
try {
176-
U nextKey = keySelector.call(next);
177-
if (!alreadyEmitted(nextKey)) {
178-
emittedKeys.add(nextKey);
179-
observer.onNext(next);
180-
}
181-
} catch (Throwable t) {
182-
// keySelector and comparator are user functions, may throw something
183-
observer.onError(t);
170+
U nextKey = keySelector.call(next);
171+
if (!alreadyEmitted(nextKey)) {
172+
emittedKeys.add(nextKey);
173+
observer.onNext(next);
184174
}
185175
}
186176

rxjava-core/src/main/java/rx/operators/OperationDistinctUntilChanged.java

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -133,18 +133,13 @@ public void onError(Throwable e) {
133133
@Override
134134
public void onNext(T next) {
135135
U lastKey = lastEmittedKey;
136-
try {
137-
U nextKey = keySelector.call(next);
138-
lastEmittedKey = nextKey;
139-
if (!hasEmitted) {
140-
hasEmitted = true;
141-
observer.onNext(next);
142-
} else if (equalityComparator.compare(lastKey, nextKey) != 0) {
143-
observer.onNext(next);
144-
}
145-
} catch (Throwable t) {
146-
// keySelector is a user function, may throw something
147-
observer.onError(t);
136+
U nextKey = keySelector.call(next);
137+
lastEmittedKey = nextKey;
138+
if (!hasEmitted) {
139+
hasEmitted = true;
140+
observer.onNext(next);
141+
} else if (equalityComparator.compare(lastKey, nextKey) != 0) {
142+
observer.onNext(next);
148143
}
149144
}
150145
});

0 commit comments

Comments
 (0)