mirror of
https://github.com/systemd/systemd.git
synced 2025-01-10 05:18:17 +03:00
bsod: make message for qrcode more useful
People know what a qrcode is. We don't need to tell them to scan it.
Instead, we should say what the code contains.
While at it, rename "stream" to "f" in line with the usual style.
(cherry picked from commit abf1cae0a7
)
This commit is contained in:
parent
e22d571f6b
commit
0ec7854d44
@ -144,7 +144,7 @@ static int display_emergency_message_fullscreen(const char *message) {
|
|||||||
unsigned qr_code_start_row = 1, qr_code_start_column = 1;
|
unsigned qr_code_start_row = 1, qr_code_start_column = 1;
|
||||||
char ttybuf[STRLEN("/dev/tty") + DECIMAL_STR_MAX(int) + 1];
|
char ttybuf[STRLEN("/dev/tty") + DECIMAL_STR_MAX(int) + 1];
|
||||||
_cleanup_close_ int fd = -EBADF;
|
_cleanup_close_ int fd = -EBADF;
|
||||||
_cleanup_fclose_ FILE *stream = NULL;
|
_cleanup_fclose_ FILE *f = NULL;
|
||||||
char read_character_buffer = '\0';
|
char read_character_buffer = '\0';
|
||||||
struct winsize w = {
|
struct winsize w = {
|
||||||
.ws_col = 80,
|
.ws_col = 80,
|
||||||
@ -207,13 +207,13 @@ static int display_emergency_message_fullscreen(const char *message) {
|
|||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
r = fdopen_independent(fd, "r+", &stream);
|
r = fdopen_independent(fd, "r+", &f);
|
||||||
if (r < 0) {
|
if (r < 0) {
|
||||||
r = log_error_errno(errno, "Failed to open output file: %m");
|
r = log_error_errno(errno, "Failed to open output file: %m");
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
r = print_qrcode_full(stream, "Scan the QR code",
|
r = print_qrcode_full(f, "Scan the error message",
|
||||||
message, qr_code_start_row, qr_code_start_column, w.ws_col, w.ws_row,
|
message, qr_code_start_row, qr_code_start_column, w.ws_col, w.ws_row,
|
||||||
/* check_tty= */ false);
|
/* check_tty= */ false);
|
||||||
if (r < 0)
|
if (r < 0)
|
||||||
@ -229,7 +229,7 @@ static int display_emergency_message_fullscreen(const char *message) {
|
|||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
r = read_one_char(stream, &read_character_buffer, USEC_INFINITY, NULL);
|
r = read_one_char(f, &read_character_buffer, USEC_INFINITY, NULL);
|
||||||
if (r < 0 && r != -EINTR)
|
if (r < 0 && r != -EINTR)
|
||||||
log_error_errno(r, "Failed to read character: %m");
|
log_error_errno(r, "Failed to read character: %m");
|
||||||
|
|
||||||
|
@ -89,7 +89,7 @@ journalctl --sync
|
|||||||
SYSTEMD_COLORS=256 /usr/lib/systemd/systemd-bsod &
|
SYSTEMD_COLORS=256 /usr/lib/systemd/systemd-bsod &
|
||||||
PID=$!
|
PID=$!
|
||||||
vcs_dump_and_check "Root emergency message"
|
vcs_dump_and_check "Root emergency message"
|
||||||
grep -aq "Scan the QR code" /tmp/console.dump
|
grep -aq "Scan the error message" /tmp/console.dump
|
||||||
# TODO: check if systemd-bsod exits on a key press (didn't figure this one out yet)
|
# TODO: check if systemd-bsod exits on a key press (didn't figure this one out yet)
|
||||||
kill $PID
|
kill $PID
|
||||||
timeout 10 bash -c "while kill -0 $PID; do sleep .5; done"
|
timeout 10 bash -c "while kill -0 $PID; do sleep .5; done"
|
||||||
|
Loading…
Reference in New Issue
Block a user