From 6704c72dcdf8c06de7931ed5138091db8c30eccc Mon Sep 17 00:00:00 2001 From: Jacob Quinn Date: Mon, 22 Dec 2025 22:12:00 -0700 Subject: [PATCH] 1.12 compat --- src/Streams.jl | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Streams.jl b/src/Streams.jl index 46ea4b98..30aa9c30 100644 --- a/src/Streams.jl +++ b/src/Streams.jl @@ -294,13 +294,21 @@ _alloc_request(buf::IOBuffer, recommended_size::UInt) = Base.alloc_request(buf, nb = min(length(buffer.data), buffer.maxsize) - ptr + 1 return (Ptr{Cvoid}(pointer(buffer.data, ptr)), nb) end -else +elseif VERSION < v"1.12" function _alloc_request(buffer::Base.GenericIOBuffer, recommended_size::UInt) Base.ensureroom(buffer, Int(recommended_size)) ptr = buffer.append ? buffer.size + 1 : buffer.ptr nb = min(length(buffer.data)-buffer.offset, buffer.maxsize) + buffer.offset - ptr + 1 return (Ptr{Cvoid}(pointer(buffer.data, ptr)), nb) end +else + function _alloc_request(buffer::Base.GenericIOBuffer, recommended_size::UInt) + Base.ensureroom(buffer, recommended_size) + ptr = buffer.append ? buffer.size + 1 : buffer.ptr + start_offset = ptr - 1 + nb = max(0, min(length(buffer.data) - start_offset, buffer.maxsize - (start_offset - Base.get_offset(buffer)))) + return (Ptr{Cvoid}(pointer(buffer.data, ptr)), nb) + end end function Base.readbytes!(http::Stream, buf::Base.GenericIOBuffer, n=bytesavailable(http))