Skip to content
This repository has been archived by the owner on Feb 12, 2022. It is now read-only.

Commit

Permalink
Fix issue with FetchLatest messages.
Browse files Browse the repository at this point in the history
  • Loading branch information
greyson-signal committed Nov 12, 2019
1 parent f694ca1 commit d8b7da0
Showing 1 changed file with 22 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -300,6 +300,8 @@ public void sendMessage(SignalServiceSyncMessage message, Optional<UnidentifiedA
content = createMultiDeviceSentTranscriptContent(message.getSent().get(), unidentifiedAccess);
} else if (message.getStickerPackOperations().isPresent()) {
content = createMultiDeviceStickerPackOperationContent(message.getStickerPackOperations().get());
} else if (message.getFetchType().isPresent()) {
content = createMultiDeviceFetchTypeContent(message.getFetchType().get());
} else if (message.getVerified().isPresent()) {
sendMessage(message.getVerified().get(), unidentifiedAccess);
return;
Expand Down Expand Up @@ -777,6 +779,26 @@ private byte[] createMultiDeviceStickerPackOperationContent(List<StickerPackOper
return container.setSyncMessage(syncMessage).build().toByteArray();
}

private byte[] createMultiDeviceFetchTypeContent(SignalServiceSyncMessage.FetchType fetchType) {
Content.Builder container = Content.newBuilder();
SyncMessage.Builder syncMessage = createSyncMessageBuilder();
SyncMessage.FetchLatest.Builder fetchMessage = SyncMessage.FetchLatest.newBuilder();

switch (fetchType) {
case LOCAL_PROFILE:
fetchMessage.setType(SyncMessage.FetchLatest.Type.LOCAL_PROFILE);
break;
case STORAGE_MANIFEST:
fetchMessage.setType(SyncMessage.FetchLatest.Type.STORAGE_MANIFEST);
break;
default:
Log.w(TAG, "Unknown fetch type!");
break;
}

return container.setSyncMessage(syncMessage.setFetchLatest(fetchMessage)).build().toByteArray();
}

private byte[] createMultiDeviceVerifiedContent(VerifiedMessage verifiedMessage, byte[] nullMessage) {
Content.Builder container = Content.newBuilder();
SyncMessage.Builder syncMessage = createSyncMessageBuilder();
Expand Down

0 comments on commit d8b7da0

Please sign in to comment.