mirror of https://github.com/fairyglade/ly.git
clear terminal on SIGTERM
This commit is contained in:
parent
f9a0f10777
commit
6dcea64840
|
@ -363,7 +363,7 @@ fn createXauthFile(pwd: [:0]const u8) ![:0]const u8 {
|
||||||
|
|
||||||
// Trim trailing slashes
|
// Trim trailing slashes
|
||||||
var i = xauth_dir.len - 1;
|
var i = xauth_dir.len - 1;
|
||||||
while (xauth_dir[i] == '/') : (i -= 1) {}
|
while (xauth_dir[i] == '/') i -= 1;
|
||||||
const trimmed_xauth_dir = xauth_dir[0 .. i + 1];
|
const trimmed_xauth_dir = xauth_dir[0 .. i + 1];
|
||||||
|
|
||||||
var buf: [256]u8 = undefined;
|
var buf: [256]u8 = undefined;
|
||||||
|
|
12
src/main.zig
12
src/main.zig
|
@ -23,6 +23,11 @@ const termbox = interop.termbox;
|
||||||
|
|
||||||
const LY_VERSION = "1.0.0";
|
const LY_VERSION = "1.0.0";
|
||||||
|
|
||||||
|
pub fn signalHandler(i: c_int) callconv(.C) void {
|
||||||
|
termbox.tb_shutdown();
|
||||||
|
std.c.exit(i);
|
||||||
|
}
|
||||||
|
|
||||||
pub fn main() !void {
|
pub fn main() !void {
|
||||||
var gpa = std.heap.GeneralPurposeAllocator(.{}){};
|
var gpa = std.heap.GeneralPurposeAllocator(.{}){};
|
||||||
defer _ = gpa.deinit();
|
defer _ = gpa.deinit();
|
||||||
|
@ -118,6 +123,13 @@ pub fn main() !void {
|
||||||
_ = termbox.tb_init();
|
_ = termbox.tb_init();
|
||||||
defer termbox.tb_shutdown();
|
defer termbox.tb_shutdown();
|
||||||
|
|
||||||
|
const act = std.os.Sigaction{
|
||||||
|
.handler = .{ .handler = &signalHandler },
|
||||||
|
.mask = std.os.empty_sigset,
|
||||||
|
.flags = 0,
|
||||||
|
};
|
||||||
|
try std.os.sigaction(std.os.SIG.TERM, &act, null);
|
||||||
|
|
||||||
_ = termbox.tb_select_output_mode(termbox.TB_OUTPUT_NORMAL);
|
_ = termbox.tb_select_output_mode(termbox.TB_OUTPUT_NORMAL);
|
||||||
termbox.tb_clear();
|
termbox.tb_clear();
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue