This commit is contained in:
antontornqvist 2025-05-09 12:59:12 +00:00 committed by GitHub
commit 1e98c48281
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 2 deletions

View File

@ -1,3 +1,4 @@
import io
import json
import struct
import urllib
@ -428,6 +429,9 @@ class APIClient(
"""
socket = self._get_raw_response_socket(response)
if isinstance(response.raw._fp.fp, io.BufferedReader):
socket = response.raw._fp.fp
gen = frames_iter(socket, tty)
if demux:

View File

@ -1,4 +1,5 @@
import errno
import io
import os
import select
import socket as pysocket
@ -30,7 +31,7 @@ def read(socket, n=4096):
recoverable_errors = (errno.EINTR, errno.EDEADLK, errno.EWOULDBLOCK)
if not isinstance(socket, NpipeSocket):
if not isinstance(socket, NpipeSocket) and not isinstance(socket, io.BufferedReader):
if not hasattr(select, "poll"):
# Limited to 1024
select.select([socket], [], [])
@ -42,7 +43,7 @@ def read(socket, n=4096):
try:
if hasattr(socket, 'recv'):
return socket.recv(n)
if isinstance(socket, pysocket.SocketIO):
if isinstance(socket, pysocket.SocketIO) or isinstance(socket, io.BufferedReader):
return socket.read(n)
return os.read(socket.fileno(), n)
except OSError as e: