diff options
| -rw-r--r-- | source/slang/slang.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/source/slang/slang.cpp b/source/slang/slang.cpp index be6edc381..22f6feac3 100644 --- a/source/slang/slang.cpp +++ b/source/slang/slang.cpp @@ -400,12 +400,13 @@ static ISlangWriter* _getDefaultWriter(WriterChannel chan) void CompileRequest::setWriter(WriterChannel chan, ISlangWriter* writer) { - writer = writer ? writer : _getDefaultWriter(chan); - m_writers[int(chan)] = writer; + // If the user passed in null, we will use the default writer on that channel + m_writers[int(chan)] = writer ? writer : _getDefaultWriter(chan); + // For diagnostic output, if the user passes in nullptr, we set on mSink.writer as that enables buffering on DiagnosticSink if (chan == WriterChannel::Diagnostic) { - mSink.writer = writer; + mSink.writer = writer; } } |
