Refresh realm before trying to resend

Fixes #1523
This commit is contained in:
Moez Bhatti
2019-11-20 23:14:24 -05:00
parent 2c4823fc95
commit cfd5bb723c
3 changed files with 7 additions and 12 deletions
@@ -34,13 +34,10 @@ class SendSmsReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
AndroidInjection.inject(this, context)
intent.getLongExtra("id", -1L)
.takeIf { it >= 0 }
?.let(messageRepo::getMessage)
?.let { message ->
val result = goAsync()
retrySending.execute(message.id) { result.finish() }
}
val messageId = intent.getLongExtra("id", -1L).takeIf { it >= 0 } ?: return
val result = goAsync()
retrySending.execute(messageId) { result.finish() }
}
}
@@ -50,7 +50,6 @@ import com.moez.QKSMS.receiver.SendSmsReceiver
import com.moez.QKSMS.receiver.SmsDeliveredReceiver
import com.moez.QKSMS.receiver.SmsSentReceiver
import com.moez.QKSMS.util.ImageUtils
import com.moez.QKSMS.util.PhoneNumberUtils
import com.moez.QKSMS.util.Preferences
import com.moez.QKSMS.util.tryOrNull
import io.realm.Case
@@ -71,7 +70,6 @@ class MessageRepositoryImpl @Inject constructor(
private val context: Context,
private val imageRepository: ImageRepository,
private val messageIds: KeyManager,
private val phoneNumberUtils: PhoneNumberUtils,
private val prefs: Preferences,
private val syncRepository: SyncRepository
) : MessageRepository {
@@ -97,6 +95,7 @@ class MessageRepositoryImpl @Inject constructor(
override fun getMessage(id: Long): Message? {
return Realm.getDefaultInstance()
.also { realm -> realm.refresh() }
.where(Message::class.java)
.equalTo("id", id)
.findFirst()