| 233 | return ret |
| 234 | |
| 235 | def readline(self, size=None): |
| 236 | size = self.getsize(size) |
| 237 | if size == 0: |
| 238 | return b"" |
| 239 | |
| 240 | data = self.buf.getvalue() |
| 241 | self.buf = io.BytesIO() |
| 242 | |
| 243 | ret = [] |
| 244 | while 1: |
| 245 | idx = data.find(b"\n", 0, size) |
| 246 | idx = idx + 1 if idx >= 0 else size if len(data) >= size else 0 |
| 247 | if idx: |
| 248 | ret.append(data[:idx]) |
| 249 | self.buf.write(data[idx:]) |
| 250 | break |
| 251 | |
| 252 | ret.append(data) |
| 253 | size -= len(data) |
| 254 | data = self.reader.read(min(1024, size)) |
| 255 | if not data: |
| 256 | break |
| 257 | |
| 258 | return b"".join(ret) |
| 259 | |
| 260 | def readlines(self, size=None): |
| 261 | ret = [] |