Commit 2bb4544
gh-150107: Fix asyncio sendfile fallback ignoring non-zero offset
The fallback paths in BaseEventLoop._sock_sendfile_fallback and
_sendfile_fallback only seeked the file when offset was truthy, so an
offset of 0 was respected but later non-zero offsets were dropped when
the file lacked seek tracking. Seek whenever the file supports seek().
Also seek the CRT file pointer on Windows TransmitFile, which ignores
OVERLAPPED.Offset for handles not opened with FILE_FLAG_OVERLAPPED.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent c7cab73 commit 2bb4544
3 files changed
Lines changed: 31 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
969 | 969 | | |
970 | 970 | | |
971 | 971 | | |
972 | | - | |
| 972 | + | |
973 | 973 | | |
974 | 974 | | |
975 | 975 | | |
| |||
1286 | 1286 | | |
1287 | 1287 | | |
1288 | 1288 | | |
1289 | | - | |
1290 | 1289 | | |
1291 | 1290 | | |
1292 | 1291 | | |
| |||
1295 | 1294 | | |
1296 | 1295 | | |
1297 | 1296 | | |
1298 | | - | |
| 1297 | + | |
1299 | 1298 | | |
1300 | 1299 | | |
1301 | 1300 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
610 | 610 | | |
611 | 611 | | |
612 | 612 | | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
613 | 616 | | |
614 | 617 | | |
615 | 618 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
228 | 228 | | |
229 | 229 | | |
230 | 230 | | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
231 | 257 | | |
232 | 258 | | |
233 | 259 | | |
| |||
0 commit comments