aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/eu/siacs/conversations/services/XmppConnectionService.java')
-rw-r--r--src/main/java/eu/siacs/conversations/services/XmppConnectionService.java21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
index 7b4f7c3f..9005d8c3 100644
--- a/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
+++ b/src/main/java/eu/siacs/conversations/services/XmppConnectionService.java
@@ -934,16 +934,21 @@ public class XmppConnectionService extends Service {
private void expireOldMessages() {
mLastExpiryRun.set(SystemClock.elapsedRealtime());
- synchronized (this.conversations) {
- long timestamp = getAutomaticMessageDeletionDate();
- if (timestamp > 0) {
- databaseBackend.expireOldMessages(timestamp);
- for (Conversation conversation : this.conversations) {
- conversation.expireOldMessages(timestamp);
+ mDatabaseExecutor.execute(new Runnable() {
+ @Override
+ public void run() {
+ long timestamp = getAutomaticMessageDeletionDate();
+ if (timestamp > 0) {
+ databaseBackend.expireOldMessages(timestamp);
+ synchronized (XmppConnectionService.this.conversations) {
+ for (Conversation conversation : XmppConnectionService.this.conversations) {
+ conversation.expireOldMessages(timestamp);
+ }
+ }
+ updateConversationUi();
}
- updateConversationUi();
}
- }
+ });
}
public boolean hasInternetConnection() {