This commit is contained in:
Mateusz Gruszczyński committed 2026-10-16 22:49:22 +02:00
1 parent 4da41a1404
commit 5cb6960b04
31 files changed
+1611 -2123

No files matched your search

+7 -2
View File
@@ -105,10 +105,15 @@ export class CollaborationSession {
const replacements = mergeOwnerReplacements([], ownerReplacements);
if (!hasTextEffect(operation) && !replacements.length) return null;
const localLength = this.localDocument().content.length;
const localLength = this.buffer
? operationTargetLength(this.buffer.operation)
: this.outstanding
? operationTargetLength(this.outstanding.operation)
: this.serverContent.length;
if (operationBaseLength(operation) !== localLength) {
throw new Error("Local operation base length does not match the collaborative document");
}
const targetLength = operationTargetLength(operation);
if (!this.buffer) {
this.buffer = pendingEnvelope(this.clientId, this.nextUpdateId++, operation, replacements);
@@ -117,7 +122,7 @@ export class CollaborationSession {
this.buffer.ownerReplacements = mergeOwnerReplacements(this.buffer.ownerReplacements, replacements);
}
if (operationTargetLength(this.buffer.operation) !== this.localDocument().content.length) {
if (operationTargetLength(this.buffer.operation) !== targetLength) {
throw new Error("Buffered operation target length does not match the collaborative document");
}
return this.buffer;