ConversationSummaryView: Fix crash when accessing content_item's first() or last() if the TreeSet is empty

This commit is contained in:
fiaxh 2020-04-28 23:11:08 +02:00
parent af52c24df7
commit 3b6e8700b4

View file

@ -443,7 +443,7 @@ public class ConversationView : Box, Plugins.ConversationItemCollection, Plugins
private void load_earlier_messages() { private void load_earlier_messages() {
was_value = scrolled.vadjustment.value; was_value = scrolled.vadjustment.value;
if (!reloading_mutex.trylock()) return; if (!reloading_mutex.trylock()) return;
if (meta_items.size > 0) { if (content_items.size > 0) {
Gee.List<ContentMetaItem> items = content_populator.populate_before(conversation, (content_items.first() as ContentMetaItem).content_item, 20); Gee.List<ContentMetaItem> items = content_populator.populate_before(conversation, (content_items.first() as ContentMetaItem).content_item, 20);
foreach (ContentMetaItem item in items) { foreach (ContentMetaItem item in items) {
do_insert_item(item); do_insert_item(item);
@ -455,7 +455,7 @@ public class ConversationView : Box, Plugins.ConversationItemCollection, Plugins
private void load_later_messages() { private void load_later_messages() {
if (!reloading_mutex.trylock()) return; if (!reloading_mutex.trylock()) return;
if (meta_items.size > 0 && !at_current_content) { if (content_items.size > 0 && !at_current_content) {
Gee.List<ContentMetaItem> items = content_populator.populate_after(conversation, (content_items.last() as ContentMetaItem).content_item, 20); Gee.List<ContentMetaItem> items = content_populator.populate_after(conversation, (content_items.last() as ContentMetaItem).content_item, 20);
if (items.size == 0) { if (items.size == 0) {
at_current_content = true; at_current_content = true;