fix Realm crash
This commit is contained in:
parent
39bd437f75
commit
daafddbe71
|
@ -66,12 +66,9 @@ internal class RealmSendingEventsDataSource(
|
||||||
|
|
||||||
private fun updateFrozenResults(sendingEvents: RealmList<TimelineEventEntity>?) {
|
private fun updateFrozenResults(sendingEvents: RealmList<TimelineEventEntity>?) {
|
||||||
// Makes sure to close the previous frozen realm
|
// Makes sure to close the previous frozen realm
|
||||||
// TODO find a better way to avoid thread timeline crash:
|
if (frozenSendingTimelineEvents?.isValid == true) {
|
||||||
// - Make RealmSendingEventsDataSource Singleton
|
frozenSendingTimelineEvents?.realm?.close()
|
||||||
// - Do not initialize RealmSendingEventsDataSource when we are in a thread timeline while
|
}
|
||||||
// we already have an instance from the main timeline
|
|
||||||
// - Close Main timeline before Opening a thread timeline
|
|
||||||
// frozenSendingTimelineEvents?.realm?.close()
|
|
||||||
frozenSendingTimelineEvents = sendingEvents?.freeze()
|
frozenSendingTimelineEvents = sendingEvents?.freeze()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -79,13 +76,15 @@ internal class RealmSendingEventsDataSource(
|
||||||
val builtSendingEvents = mutableListOf<TimelineEvent>()
|
val builtSendingEvents = mutableListOf<TimelineEvent>()
|
||||||
uiEchoManager.getInMemorySendingEvents()
|
uiEchoManager.getInMemorySendingEvents()
|
||||||
.addWithUiEcho(builtSendingEvents)
|
.addWithUiEcho(builtSendingEvents)
|
||||||
frozenSendingTimelineEvents
|
if (frozenSendingTimelineEvents?.isValid == true) {
|
||||||
?.filter { timelineEvent ->
|
frozenSendingTimelineEvents
|
||||||
builtSendingEvents.none { it.eventId == timelineEvent.eventId }
|
?.filter { timelineEvent ->
|
||||||
}
|
builtSendingEvents.none { it.eventId == timelineEvent.eventId }
|
||||||
?.map {
|
}
|
||||||
timelineEventMapper.map(it)
|
?.map {
|
||||||
}?.addWithUiEcho(builtSendingEvents)
|
timelineEventMapper.map(it)
|
||||||
|
}?.addWithUiEcho(builtSendingEvents)
|
||||||
|
}
|
||||||
|
|
||||||
return builtSendingEvents
|
return builtSendingEvents
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue