← Commit list

918f444f9

Denys Vlasenko
Denys Vlasenko
2010-06-25
FAILED Duration: 45s

Subject

conspy: make "conspy 0" use vcsa0 but "conspy" (no param) use vcsa

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

miscutils/conspy.c+4 -7
@@ -222,7 +222,6 @@ static void cleanup(int code)
fflush_all();
tcsetattr(G.kbd_fd, TCSANOW, &G.term_orig);
if (ENABLE_FEATURE_CLEAN_UP) {
- free(ptr_to_globals);
close(G.kbd_fd);
}
// Reset attributes
@@ -309,6 +308,7 @@ int conspy_main(int argc UNUSED_PARAM, char **argv)
applet_long_options = getopt_longopts;
#endif
INIT_G();
+ strcpy(vcsa_name, "/dev/vcsa");
opt_complementary = "x+:y+"; // numeric params
opts = getopt32(argv, "vcsndfx:y:", &G.x, &G.y);
@@ -316,8 +316,8 @@ int conspy_main(int argc UNUSED_PARAM, char **argv)
ttynum = 0;
if (argv[0]) {
ttynum = xatou_range(argv[0], 0, 63);
+ sprintf(vcsa_name + sizeof("/dev/vcsa")-1, "%u", ttynum);
}
- sprintf(vcsa_name, "/dev/vcsa%u", ttynum);
sprintf(tty_name, "%s%u", "/dev/tty", ttynum);
if (opts & FLAG(c)) {
if ((opts & (FLAG(s)|FLAG(v))) != FLAG(v))
@@ -329,19 +329,16 @@ int conspy_main(int argc UNUSED_PARAM, char **argv)
}
get_initial_data(vcsa_name);
- G.kbd_fd = xopen(CURRENT_TTY, O_RDONLY);
if (opts & FLAG(d)) {
screen_dump();
bb_putchar('\n');
- if (ENABLE_FEATURE_CLEAN_UP) {
- free(ptr_to_globals);
- close(G.kbd_fd);
- }
return 0;
}
bb_signals(BB_FATAL_SIGS, cleanup);
+
// All characters must be passed through to us unaltered
+ G.kbd_fd = xopen(CURRENT_TTY, O_RDONLY);
tcgetattr(G.kbd_fd, &G.term_orig);
termbuf = G.term_orig;
termbuf.c_iflag &= ~(BRKINT|INLCR|ICRNL|IXON|IXOFF|IUCLC|IXANY|IMAXBEL);