mirror of
https://github.com/oxen-io/session-android.git
synced 2025-06-10 07:38:34 +00:00
Fix possible data source invalidation loop.
This commit is contained in:
parent
b80c339c5a
commit
8d3a91f3a4
@ -130,23 +130,16 @@ class ConversationDataSource extends PositionalDataSource<MessageRecord> {
|
||||
}
|
||||
|
||||
static class Invalidator {
|
||||
private boolean invalidated;
|
||||
private Runnable callback;
|
||||
|
||||
synchronized void invalidate() {
|
||||
invalidated = true;
|
||||
|
||||
if (callback != null) {
|
||||
callback.run();
|
||||
}
|
||||
}
|
||||
|
||||
private synchronized void observe(@NonNull Runnable callback) {
|
||||
if (invalidated) {
|
||||
callback.run();
|
||||
} else {
|
||||
this.callback = callback;
|
||||
}
|
||||
this.callback = callback;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user