Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Correct some faulty assumptions in the zlib transformation input driver.
BRANCHED - some other EOF matters need checking before this is trunk ready. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | dgp-eof |
Files: | files | file ages | folders |
SHA1: |
dfadac1b7136617bcc18b8b6cb11582f |
User & Date: | dgp 2014-03-21 19:07:02 |
Original Comment: | Correct some faulty assumptions in the zlib transformation input driver. |
Context
2014-03-21
| ||
19:07 |
Correct some faulty assumptions in the zlib transformation input driver.
BRANCHED - some other EO... Closed-Leaf check-in: dfadac1b71 user: dgp tags: dgp-eof | |
17:11 | Added comments raising questions about possible updates to channel drivers on Windows. check-in: 5134ecb54a user: dgp tags: trunk | |
Changes
Changes to generic/tclZlib.c.
︙ | ︙ | |||
3008 3009 3010 3011 3012 3013 3014 | return gotBytes; } *errorCodePtr = Tcl_GetErrno(); return -1; } else if (readBytes == 0) { /* | < < < < < < < < | < < < < | < < < < < < | < < < < < < | < | < | | < | < < | < | 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 | return gotBytes; } *errorCodePtr = Tcl_GetErrno(); return -1; } else if (readBytes == 0) { /* * The 'parent' is at EOF. It will not deliver us any more * bytes. Make one last decompression attempt where we flush * the streams. */ if (ResultGenerate(cd, 0, Z_SYNC_FLUSH, errorCodePtr) != TCL_OK) { return -1; } /* * Note that in the case where gotBytes == 0 (nothing in * the decompressed buffer to begin with) and the flush * also produce no new output, we are returning 0, which * signals the EOF to our caller. */ return gotBytes + ResultCopy(cd, buf, toRead); } else /* readBytes > 0 */ { /* * Transform the read chunk, which was not empty. Anything we get * back is a transformation result to be put into our buffers, and * the next iteration will put it into the result. */ |
︙ | ︙ |