diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2017-05-13 19:42:27 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2017-05-13 19:42:27 -0700 |
commit | 657c6fedce9c743e46badcc4457a1fbaa8901d7e (patch) | |
tree | 6ddef38e3dfa8cca28240b7ea505277db57ced15 /txr.h | |
parent | 9bed01c59d5f5fe0bbc9d025ae95cf3b9518d5a7 (diff) | |
download | txr-657c6fedce9c743e46badcc4457a1fbaa8901d7e.tar.gz txr-657c6fedce9c743e46badcc4457a1fbaa8901d7e.tar.bz2 txr-657c6fedce9c743e46badcc4457a1fbaa8901d7e.zip |
bugfix: gc-incorrect creation of catenated stream.
* stream.c (make_catenated_stream): Fix incorrect order
of operations: list of streams stored into a structure
that is not yet visible to the garbage collector.
(Rules for coding this properly are explained in
HACKING.) This was found by running a test with --gc-debug
on 64 bit Darwin. The read_eval_stream function calls
make_catenated_stream with an argument that is freshly
constructed in the argument expression itself, triggering
the issue.
Diffstat (limited to 'txr.h')
0 files changed, 0 insertions, 0 deletions