std: clean up debug stderr variables

- stderr_file_writer was unused
  - stderr_stream was a pointer to a stream, rather than a stream
  - other functions assumed that getStderrStream has already been called
master
daurnimator 2020-06-15 22:58:59 +10:00
parent e7207bc267
commit ce30357532
No known key found for this signature in database
GPG Key ID: 45B429A8F9D9D22A
1 changed files with 6 additions and 16 deletions

View File

@ -50,14 +50,10 @@ pub const LineInfo = struct {
}
};
/// Tries to write to stderr, unbuffered, and ignores any error returned.
/// Does not append a newline.
var stderr_file: File = undefined;
var stderr_file_writer: File.Writer = undefined;
var stderr_stream: ?*File.OutStream = null;
var stderr_mutex = std.Mutex.init();
/// Tries to write to stderr, unbuffered, and ignores any error returned.
/// Does not append a newline.
pub fn warn(comptime fmt: []const u8, args: var) void {
const held = stderr_mutex.acquire();
defer held.release();
@ -65,16 +61,8 @@ pub fn warn(comptime fmt: []const u8, args: var) void {
nosuspend stderr.print(fmt, args) catch return;
}
pub fn getStderrStream() *File.OutStream {
if (stderr_stream) |st| {
return st;
} else {
stderr_file = io.getStdErr();
stderr_file_writer = stderr_file.outStream();
const st = &stderr_file_writer;
stderr_stream = st;
return st;
}
pub fn getStderrStream() File.OutStream {
return io.getStdErr().outStream();
}
pub fn getStderrMutex() *std.Mutex {
@ -99,6 +87,7 @@ pub fn detectTTYConfig() TTY.Config {
if (process.getEnvVarOwned(allocator, "ZIG_DEBUG_COLOR")) |_| {
return .escape_codes;
} else |_| {
const stderr_file = io.getStdErr();
if (stderr_file.supportsAnsiEscapeCodes()) {
return .escape_codes;
} else if (builtin.os.tag == .windows and stderr_file.isTty()) {
@ -458,6 +447,7 @@ pub const TTY = struct {
.Reset => out_stream.writeAll(RESET) catch return,
},
.windows_api => if (builtin.os.tag == .windows) {
const stderr_file = io.getStdErr();
const S = struct {
var attrs: windows.WORD = undefined;
var init_attrs = false;