← Commit list

274b8c063

Denis Vlasenko
Denis Vlasenko
2006-09-30
SOURCE BUG Duration: 64s

Subject

fbset: add support for -a (bug 1017)

SOURCE BUG

This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)

→ Bu hatanin tam hikayesini ve duzeltme diffini gor

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 →

util-linux/fbset.c+14 -6
@@ -21,6 +21,7 @@ enum {
OPT_CHANGE = (1 << 0),
OPT_INFO = (1 << 1),
OPT_READMODE = (1 << 2),
+ OPT_ALL = (1 << 9),
CMD_FB = 1,
CMD_DB = 2,
@@ -63,6 +64,7 @@ enum {
static unsigned int g_options = 0;
/* Stuff stolen from the kernel's fb.h */
+#define FB_ACTIVATE_ALL 64
enum {
FBIOGET_VSCREENINFO = 0x4600,
FBIOPUT_VSCREENINFO = 0x4601
@@ -357,9 +359,12 @@ int fbset_main(int argc, char **argv)
varset.hsync_len = strtoul(argv[6], 0, 0);
varset.vsync_len = strtoul(argv[7], 0, 0);
break;
- case CMD_CHANGE:
- g_options |= OPT_CHANGE;
- break;
+ case CMD_ALL:
+ g_options |= OPT_ALL;
+ break;
+ case CMD_CHANGE:
+ g_options |= OPT_CHANGE;
+ break;
#ifdef CONFIG_FEATURE_FBSET_FANCY
case CMD_XRES:
varset.xres = strtoul(argv[1], 0, 0);
@@ -367,7 +372,7 @@ int fbset_main(int argc, char **argv)
case CMD_YRES:
varset.yres = strtoul(argv[1], 0, 0);
break;
- case CMD_DEPTH:
+ case CMD_DEPTH:
varset.bits_per_pixel = strtoul(argv[1], 0, 0);
break;
#endif
@@ -392,15 +397,18 @@ int fbset_main(int argc, char **argv)
bb_perror_msg_and_die("fbset(ioctl)");
if (g_options & OPT_READMODE) {
if (!readmode(&var, modefile, mode)) {
- bb_error_msg("Unknown video mode `%s'", mode);
+ bb_error_msg("unknown video mode '%s'", mode);
return EXIT_FAILURE;
}
}
setmode(&var, &varset);
- if (g_options & OPT_CHANGE)
+ if (g_options & OPT_CHANGE) {
+ if (g_options & OPT_ALL)
+ var.activate = FB_ACTIVATE_ALL;
if (ioctl(fh, FBIOPUT_VSCREENINFO, &var))
bb_perror_msg_and_die("fbset(ioctl)");
+ }
showmode(&var);
/* Don't close the file, as exiting will take care of that */
/* close(fh); */