diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2018-03-30 10:20:14 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2018-03-30 10:20:14 -0700 |
commit | 8f6422ad7c34d07d7ff81384e789168fa6c10759 (patch) | |
tree | 61782a51ea4916ddc4c22242d968de15d1cc132b /buf.c | |
parent | 91f94cfd8e003f7ed4bcbca55943a9f588ecc576 (diff) | |
download | txr-8f6422ad7c34d07d7ff81384e789168fa6c10759.tar.gz txr-8f6422ad7c34d07d7ff81384e789168fa6c10759.tar.bz2 txr-8f6422ad7c34d07d7ff81384e789168fa6c10759.zip |
string output streams: null pointer deref.
Originally, string output streams would null out their handle
when the string was extracted. This changed in commit
e44c113ee17c7cf15e8b1891f4d51ec03b16bc24 [Jul 2015], so that
just the string buffer was nulled out. Unfortunately, two
places in the code were not updated, still checking for a null
handle, which is always false, and not defending against the
null handle.
* stream.c (string_out_extracted_error): New static function.
(string_out_put_string, string_out_put_byte): Check the buffer
for null, not the handle, which doesn't go null while the
object is live. Throw an exception rather than returning nil.
Diffstat (limited to 'buf.c')
0 files changed, 0 insertions, 0 deletions