mirror of https://github.com/docker/docker-py.git
Do not interrupt streaming when encountering 0-length frames
Signed-off-by: Joffrey F <joffrey@docker.com>
This commit is contained in:
parent
2671d87843
commit
37fbc8b4fd
|
|
@ -59,7 +59,7 @@ def next_frame_size(socket):
|
||||||
try:
|
try:
|
||||||
data = read_exactly(socket, 8)
|
data = read_exactly(socket, 8)
|
||||||
except SocketError:
|
except SocketError:
|
||||||
return 0
|
return -1
|
||||||
|
|
||||||
_, actual = struct.unpack('>BxxxL', data)
|
_, actual = struct.unpack('>BxxxL', data)
|
||||||
return actual
|
return actual
|
||||||
|
|
@ -71,7 +71,7 @@ def frames_iter(socket):
|
||||||
"""
|
"""
|
||||||
while True:
|
while True:
|
||||||
n = next_frame_size(socket)
|
n = next_frame_size(socket)
|
||||||
if n == 0:
|
if n < 0:
|
||||||
break
|
break
|
||||||
while n > 0:
|
while n > 0:
|
||||||
result = read(socket, n)
|
result = read(socket, n)
|
||||||
|
|
|
||||||
|
|
@ -205,7 +205,9 @@ def get_fake_wait():
|
||||||
|
|
||||||
def get_fake_logs():
|
def get_fake_logs():
|
||||||
status_code = 200
|
status_code = 200
|
||||||
response = (b'\x01\x00\x00\x00\x00\x00\x00\x11Flowering Nights\n'
|
response = (b'\x01\x00\x00\x00\x00\x00\x00\x00'
|
||||||
|
b'\x02\x00\x00\x00\x00\x00\x00\x00'
|
||||||
|
b'\x01\x00\x00\x00\x00\x00\x00\x11Flowering Nights\n'
|
||||||
b'\x01\x00\x00\x00\x00\x00\x00\x10(Sakuya Iyazoi)\n')
|
b'\x01\x00\x00\x00\x00\x00\x00\x10(Sakuya Iyazoi)\n')
|
||||||
return status_code, response
|
return status_code, response
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue