From 263fb9fc048e2f7d4e644c1d73dd8a59b096e14f Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Wed, 22 Feb 2023 10:44:29 -0500 Subject: [PATCH] Use null when submitting empty reporting tokens. Cleaned up a few things too, just spacing and stuff. --- .../thoughtcrime/securesms/database/MessageTable.java | 9 ++++----- .../org/thoughtcrime/securesms/jobs/ReportSpamJob.java | 9 +++++---- .../signalservice/internal/push/SpamTokenMessage.kt | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/MessageTable.java b/app/src/main/java/org/thoughtcrime/securesms/database/MessageTable.java index a7b3eaf78f..8d82216d8b 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/MessageTable.java +++ b/app/src/main/java/org/thoughtcrime/securesms/database/MessageTable.java @@ -3798,9 +3798,10 @@ public class MessageTable extends DatabaseTable implements MessageTypes, Recipie List data = new ArrayList<>(); try (Cursor cursor = db.query(TABLE_NAME, new String[] { RECIPIENT_ID, SERVER_GUID, DATE_RECEIVED }, query, args, null, null, DATE_RECEIVED + " DESC", "3")) { while (cursor.moveToNext()) { - RecipientId id = RecipientId.from(CursorUtil.requireLong(cursor, RECIPIENT_ID)); - String serverGuid = CursorUtil.requireString(cursor, SERVER_GUID); + RecipientId id = RecipientId.from(CursorUtil.requireLong(cursor, RECIPIENT_ID)); + String serverGuid = CursorUtil.requireString(cursor, SERVER_GUID); long dateReceived = CursorUtil.requireLong(cursor, DATE_RECEIVED); + if (!Util.isEmpty(serverGuid)) { data.add(new ReportSpamData(id, serverGuid, dateReceived)); } @@ -4164,9 +4165,7 @@ public class MessageTable extends DatabaseTable implements MessageTypes, Recipie } public @NonNull List getReportSpamMessageServerData(long threadId, long timestamp, int limit) { - return SignalDatabase - .messages() - .getReportSpamMessageServerGuids(threadId, timestamp) + return getReportSpamMessageServerGuids(threadId, timestamp) .stream() .sorted((l, r) -> -Long.compare(l.getDateReceived(), r.getDateReceived())) .limit(limit) diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/ReportSpamJob.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/ReportSpamJob.java index 07ff29471d..766c4cd89c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/ReportSpamJob.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/ReportSpamJob.java @@ -75,13 +75,14 @@ public class ReportSpamJob extends BaseJob { int count = 0; List reportSpamData = SignalDatabase.messages().getReportSpamMessageServerData(threadId, timestamp, MAX_MESSAGE_COUNT); SignalServiceAccountManager signalServiceAccountManager = ApplicationDependencies.getSignalServiceAccountManager(); - for (ReportSpamData data : reportSpamData) { - final RecipientId recipientId = data.getRecipientId(); - Optional serviceId = Recipient.resolved(recipientId).getServiceId(); + for (ReportSpamData data : reportSpamData) { + RecipientId recipientId = data.getRecipientId(); + Recipient recipient = Recipient.resolved(recipientId); + Optional serviceId = recipient.getServiceId(); if (serviceId.isPresent() && !serviceId.get().isUnknown()) { - String reportingTokenEncoded = ""; + String reportingTokenEncoded = null; byte[] reportingTokenBytes = SignalDatabase.recipients().getReportingToken(recipientId); if (reportingTokenBytes != null) { diff --git a/libsignal/service/src/main/java/org/whispersystems/signalservice/internal/push/SpamTokenMessage.kt b/libsignal/service/src/main/java/org/whispersystems/signalservice/internal/push/SpamTokenMessage.kt index efc96a5ea1..fbf8eed5b2 100644 --- a/libsignal/service/src/main/java/org/whispersystems/signalservice/internal/push/SpamTokenMessage.kt +++ b/libsignal/service/src/main/java/org/whispersystems/signalservice/internal/push/SpamTokenMessage.kt @@ -2,4 +2,4 @@ package org.whispersystems.signalservice.internal.push import com.fasterxml.jackson.annotation.JsonProperty -data class SpamTokenMessage(@JsonProperty val token: String) +data class SpamTokenMessage(@JsonProperty val token: String?)