Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | [50750c735a] Fix broken test and stop reading uninit-but-allocated memory in zlib channel transform. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | core-8-6-branch |
Files: | files | file ages | folders |
SHA1: |
5740bfebc117d07e223ebb1f36609361 |
User & Date: | dkf 2017-04-27 10:43:32 |
Context
2017-04-27
| ||
17:19 | [04e26c02c0] Remove useless condition that raises warnings. check-in: 1fd3e94447 user: dgp tags: core-8-6-branch | |
12:06 | merge 8.6 check-in: e96ff1c106 user: dgp tags: core-8-6-7-rc | |
10:51 | [50750c735a] Fix broken test and stop reading uninit-but-allocated memory in zlib channel transform. check-in: d9638d1cad user: dkf tags: trunk | |
10:43 | [50750c735a] Fix broken test and stop reading uninit-but-allocated memory in zlib channel transform. check-in: 5740bfebc1 user: dkf tags: core-8-6-branch | |
2017-04-25
| ||
19:32 | [50750c735a] Fix for uninit memory handling issue in zlib transforms. Closed-Leaf check-in: fa1d22e834 user: dkf tags: bug-50750c735a | |
13:08 | Deal with a couple of obscure causes of warnings on some versions of OSX. check-in: bf05ca054c user: dkf tags: core-8-6-branch | |
Changes
Changes to generic/tclZlib.c.
︙ | ︙ | |||
3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 | int e, produced; Tcl_Obj *errObj; if (cd->mode == TCL_ZLIB_STREAM_INFLATE) { return outProc(Tcl_GetChannelInstanceData(cd->parent), buf, toWrite, errorCodePtr); } cd->outStream.next_in = (Bytef *) buf; cd->outStream.avail_in = toWrite; | > > > > > > > > | | < < < < < | < | < < < | | | | | | < | 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 | int e, produced; Tcl_Obj *errObj; if (cd->mode == TCL_ZLIB_STREAM_INFLATE) { return outProc(Tcl_GetChannelInstanceData(cd->parent), buf, toWrite, errorCodePtr); } /* * No zero-length writes. Flushes must be explicit. */ if (toWrite == 0) { return 0; } cd->outStream.next_in = (Bytef *) buf; cd->outStream.avail_in = toWrite; while (cd->outStream.avail_in > 0) { e = Deflate(&cd->outStream, cd->outBuffer, cd->outAllocated, Z_NO_FLUSH, &produced); if (e != Z_OK || produced == 0) { break; } if (Tcl_WriteRaw(cd->parent, cd->outBuffer, produced) < 0) { *errorCodePtr = Tcl_GetErrno(); return -1; } } if (e == Z_OK) { return toWrite - cd->outStream.avail_in; } errObj = Tcl_NewListObj(0, NULL); Tcl_ListObjAppendElement(NULL, errObj, Tcl_NewStringObj("-errorcode",-1)); |
︙ | ︙ |
Changes to tests/zlib.test.
︙ | ︙ | |||
1000 1001 1002 1003 1004 1005 1006 | close $fin close $fout } file size $filedst } -cleanup { removeFile $filesrc removeFile $filedst | | | 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 | close $fin close $fout } file size $filedst } -cleanup { removeFile $filesrc removeFile $filedst } -result 56 ::tcltest::cleanupTests return # Local Variables: # mode: tcl # End: |