Skip to content

Commit 678e057

Browse files
check logger.stream isopen immediately before write
1 parent 618679b commit 678e057

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

base/logging/logging.jl

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -699,9 +699,6 @@ function handle_message(logger::SimpleLogger, level::LogLevel, message, _module,
699699
end
700700
buf = IOBuffer()
701701
stream::IO = logger.stream
702-
if !(isopen(stream)::Bool)
703-
stream = stderr
704-
end
705702
iob = IOContext(buf, stream)
706703
levelstr = level == Warn ? "Warning" : string(level)
707704
msglines = eachsplit(chomp(convert(String, string(message))::String), '\n')
@@ -716,7 +713,12 @@ function handle_message(logger::SimpleLogger, level::LogLevel, message, _module,
716713
end
717714
println(iob, "└ @ ", _module, " ", filepath, ":", line)
718715
b = take!(buf)
719-
@lock logger.lock write(stream, b)
716+
@lock logger.lock begin
717+
if !(isopen(stream)::Bool)
718+
stream = stderr
719+
end
720+
write(stream, b)
721+
end
720722
nothing
721723
end
722724

0 commit comments

Comments
 (0)