diff options
author | Adrian Thurston <thurston@colm.net> | 2018-05-15 11:11:47 -0400 |
---|---|---|
committer | Adrian Thurston <thurston@colm.net> | 2018-05-15 11:11:47 -0400 |
commit | b911a8b4cac2b335b4e093c0ebbd36fbc56495fe (patch) | |
tree | 2a2a15037dd2c688a108d11e46e28d064ba397e2 | |
parent | 63db79925f869f0fa5336764325d80e80668af76 (diff) | |
download | colm-b911a8b4cac2b335b4e093c0ebbd36fbc56495fe.tar.gz |
verify operating on a parser in SEND_EOF instructions
-rw-r--r-- | src/bytecode.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/bytecode.c b/src/bytecode.c index 124d8d61..938d7b7b 100644 --- a/src/bytecode.c +++ b/src/bytecode.c @@ -2495,7 +2495,8 @@ again: vm_push_stream( stream ); si = stream_to_impl( stream ); - si->funcs->set_eof( si ); + if ( stream->parser != 0 ) + si->funcs->set_eof( si ); if ( exec->WV ) { rcode_unit_start( exec ); @@ -2515,10 +2516,11 @@ again: debug( prg, REALM_BYTECODE, "IN_SEND_EOF_BKT\n" ); - struct stream_impl *si = stream_to_impl( stream->parser->input ); - si->funcs->unset_eof( si ); + if ( stream->parser != 0 ) { + struct stream_impl *si = stream_to_impl( stream ); + si->funcs->unset_eof( si ); + } break; - } case IN_INPUT_CLOSE_WC: { |