summaryrefslogtreecommitdiff
path: root/console-tools/kbd_mode.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2008-08-05 23:32:27 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2008-08-05 23:32:27 +0000
commit2afd5ab62ca5f2438a3953f37e738f73553595da (patch)
treef6406254bd52e449ac58851e370774ed29e449c2 /console-tools/kbd_mode.c
parente0143a1aad60e9141245034379469477006dba81 (diff)
downloadbusybox-w32-2afd5ab62ca5f2438a3953f37e738f73553595da.tar.gz
busybox-w32-2afd5ab62ca5f2438a3953f37e738f73553595da.tar.bz2
busybox-w32-2afd5ab62ca5f2438a3953f37e738f73553595da.zip
*: use get_console_fd() as appropriate, and make it fail on open error -
get_console_fd_or_die(). function old new delta get_console_fd_or_die - 163 +163 loadkmap_main 211 201 -10 loadfont_main 440 430 -10 dumpkmap_main 218 208 -10 kbd_mode_main 158 146 -12 setkeycodes_main 156 143 -13 get_console_fd 163 - -163 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 0/5 up/down: 163/-218) Total: -55 bytes
Diffstat (limited to 'console-tools/kbd_mode.c')
-rw-r--r--console-tools/kbd_mode.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/console-tools/kbd_mode.c b/console-tools/kbd_mode.c
index 2162fd4fc..cb97947ce 100644
--- a/console-tools/kbd_mode.c
+++ b/console-tools/kbd_mode.c
@@ -19,17 +19,15 @@ int kbd_mode_main(int argc UNUSED_PARAM, char **argv)
19 int fd; 19 int fd;
20 unsigned opt; 20 unsigned opt;
21 enum { 21 enum {
22 SCANCODE = (1<<0), 22 SCANCODE = (1 << 0),
23 ASCII = (1<<1), 23 ASCII = (1 << 1),
24 MEDIUMRAW= (1<<2), 24 MEDIUMRAW = (1 << 2),
25 UNICODE = (1<<3) 25 UNICODE = (1 << 3)
26 }; 26 };
27 static const char KD_xxx[] ALIGN1 = "saku"; 27 static const char KD_xxx[] ALIGN1 = "saku";
28 opt = getopt32(argv, KD_xxx); 28 opt = getopt32(argv, KD_xxx);
29 fd = get_console_fd(); 29 fd = get_console_fd_or_die();
30/* if (fd < 0) 30
31 return EXIT_FAILURE;
32*/
33 if (!opt) { /* print current setting */ 31 if (!opt) { /* print current setting */
34 const char *mode = "unknown"; 32 const char *mode = "unknown";
35 int m; 33 int m;
@@ -46,7 +44,8 @@ int kbd_mode_main(int argc UNUSED_PARAM, char **argv)
46 printf("The keyboard is in %s mode\n", mode); 44 printf("The keyboard is in %s mode\n", mode);
47 } else { 45 } else {
48 opt = opt & UNICODE ? 3 : opt >> 1; 46 opt = opt & UNICODE ? 3 : opt >> 1;
49 xioctl(fd, KDSKBMODE, opt); 47 /* double cast prevents warnings about widening conversion */
48 xioctl(fd, KDSKBMODE, (void*)(ptrdiff_t)opt);
50 } 49 }
51 50
52 if (ENABLE_FEATURE_CLEAN_UP) 51 if (ENABLE_FEATURE_CLEAN_UP)