Skip to content

Commit 201c640

Browse files
committed
wip
1 parent 76fed75 commit 201c640

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

sdk/storage/azure-storage-common/src/main/java/com/azure/storage/common/implementation/structuredmessage/StructuredMessageEncoder.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -108,9 +108,7 @@ private byte[] generateMessageHeader() {
108108
return buffer.array();
109109
}
110110

111-
private byte[] generateSegmentHeader() {
112-
int segmentContentSize = Math.min(segmentSize, contentLength - currentContentOffset);
113-
// 2 byte number, 8 byte size
111+
private byte[] generateSegmentHeader(int segmentContentSize) {
114112
ByteBuffer buffer = ByteBuffer.allocate(getSegmentHeaderLength()).order(ByteOrder.LITTLE_ENDIAN);
115113
buffer.putShort((short) currentSegmentNumber);
116114
buffer.putLong(segmentContentSize);
@@ -155,7 +153,9 @@ public Flux<ByteBuffer> encode(ByteBuffer unencodedBuffer) {
155153
// if we are at the beginning of a segment's content, encode segment header
156154
if (currentSegmentOffset == 0) {
157155
incrementCurrentSegment();
158-
buffers.add(ByteBuffer.wrap(generateSegmentHeader()));
156+
// Calculate actual segment size based on remaining content
157+
int actualSegmentSize = Math.min(segmentSize, contentLength - currentContentOffset);
158+
buffers.add(ByteBuffer.wrap(generateSegmentHeader(actualSegmentSize)));
159159
}
160160

161161
buffers.add(encodeSegmentContent(unencodedBuffer));

0 commit comments

Comments
 (0)