We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent d3dd42b commit 2b6d776Copy full SHA for 2b6d776
1 file changed
internal/socket/duplex.go
@@ -1092,10 +1092,20 @@ func (dc *DuplexConnection) sendPayload(
1092
}
1093
dc.doSplit(d, m, func(index int, result fragmentation.SplitResult) {
1094
flag := result.Flag
1095
+ isLastFragment := !result.Flag.Check(core.FlagFollow)
1096
+
1097
if index == 0 {
1098
flag |= frameFlag
1099
+ // Remove (C)omplete flag, unless this is the last fragment.
1100
+ if !isLastFragment {
1101
+ flag &^= core.FlagComplete
1102
+ }
1103
} else {
1104
flag |= core.FlagNext
1105
+ // Set (C)omplete flag, if the original frame had it and this is the last fragment.
1106
+ if isLastFragment && frameFlag.Check(core.FlagComplete) {
1107
+ flag |= core.FlagComplete
1108
1109
1110
1111
// lazy release at last frame
0 commit comments