radio: Correctly reset terminal on exit/error

This commit is contained in:
Andreas Eversberg
2024-10-16 19:29:06 +02:00
parent 8f91ed1f64
commit a2e7b38ed2

View File

@@ -421,7 +421,7 @@ int main(int argc, char *argv[])
rc = radio_start(&radio);
if (rc < 0) {
fprintf(stderr, "Failed to start radio's streaming, exitting!\n");
goto error;
goto error_start;
}
int tosend, got;
@@ -500,12 +500,18 @@ next_char:
}
}
error_start:
/* reset signals */
signal(SIGINT, SIG_DFL);
signal(SIGHUP, SIG_DFL);
signal(SIGTERM, SIG_DFL);
signal(SIGPIPE, SIG_DFL);
display_measurements_on(0);
display_spectrum_on(0);
display_wave_on(0);
display_iq_on(0);
/* reset terminal */
tcsetattr(0, TCSANOW, &term_orig);