Fix sync message serialization

Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
This commit is contained in:
automated-signal
2026-03-05 14:03:45 -06:00
committed by GitHub
parent ad31a34333
commit 00c123c41a

View File

@@ -1948,11 +1948,22 @@ export class MessageSender {
const syncMessage = MessageSender.createSyncMessage(); const syncMessage = MessageSender.createSyncMessage();
syncMessage.read = []; syncMessage.read = [];
for (let i = 0; i < reads.length; i += 1) { for (const r of reads) {
const proto = new Proto.SyncMessage.Read({ const proto = new Proto.SyncMessage.Read(
...reads[i], isProtoBinaryEncodingEnabled()
timestamp: Long.fromNumber(reads[i].timestamp), ? {
}); senderAci: null,
senderAciBinary: r.senderAci
? toAciObject(r.senderAci).getRawUuidBytes()
: null,
timestamp: Long.fromNumber(r.timestamp),
}
: {
senderAci: r.senderAci,
senderAciBinary: null,
timestamp: Long.fromNumber(r.timestamp),
}
);
syncMessage.read.push(proto); syncMessage.read.push(proto);
} }
@@ -1982,10 +1993,21 @@ export class MessageSender {
const syncMessage = MessageSender.createSyncMessage(); const syncMessage = MessageSender.createSyncMessage();
syncMessage.viewed = views.map( syncMessage.viewed = views.map(
view => view =>
new Proto.SyncMessage.Viewed({ new Proto.SyncMessage.Viewed(
...view, isProtoBinaryEncodingEnabled()
timestamp: Long.fromNumber(view.timestamp), ? {
}) senderAci: null,
senderAciBinary: view.senderAci
? toAciObject(view.senderAci).getRawUuidBytes()
: null,
timestamp: Long.fromNumber(view.timestamp),
}
: {
senderAci: view.senderAci,
senderAciBinary: null,
timestamp: Long.fromNumber(view.timestamp),
}
)
); );
const contentMessage = new Proto.Content(); const contentMessage = new Proto.Content();
contentMessage.syncMessage = syncMessage; contentMessage.syncMessage = syncMessage;