Skip to content

Commit 364f4b3

Browse files
committed
Implement bodysummary without private APIs
1 parent 0ac1528 commit 364f4b3

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

src/Messages.jl

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -588,8 +588,17 @@ The first chunk of the Message Body (for display purposes).
588588
bodysummary(body) = isbytes(body) ? view(bytes(body), 1:min(nbytes(body), BODY_SHOW_MAX[])) : "[Message Body was streamed]"
589589
bodysummary(body::Union{AbstractDict, NamedTuple}) = URIs.escapeuri(body)
590590
function bodysummary(body::Form)
591-
if length(body.data) == 1 && isa(body.data[1], IOBuffer)
592-
return body.data[1].data[1:body.data[1].ptr-1]
591+
if length(body.data) == 1
592+
data = body.data[1]
593+
if data isa Base.GenericIOBuffer && data.seekable
594+
oldmark = data.mark
595+
m = mark(data)
596+
seekstart(data)
597+
content = read(data, m)
598+
reset(data)
599+
data.mark = oldmark
600+
return content
601+
end
593602
end
594603
return "[Message Body was streamed]"
595604
end

0 commit comments

Comments
 (0)