From 4aee303add071ca3c1f6af54238556e117365357 Mon Sep 17 00:00:00 2001 From: Rob Landley Date: Thu, 17 Oct 2013 14:43:38 -0500 Subject: Minor cleanup of reboot --- toys/other/reboot.c | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/toys/other/reboot.c b/toys/other/reboot.c index ae70cf91..5cbc4f87 100644 --- a/toys/other/reboot.c +++ b/toys/other/reboot.c @@ -23,20 +23,9 @@ config REBOOT void reboot_main(void) { - char c = toys.which->name[0]; - - if (!(toys.optflags & FLAG_n)) - sync(); - - switch(c) { - case 'p': - toys.exitval = reboot(RB_POWER_OFF); - break; - case 'h': - toys.exitval = reboot(RB_HALT_SYSTEM); - break; - case 'r': - default: - toys.exitval = reboot(RB_AUTOBOOT); - } + int types[] = {RB_AUTOBOOT, RB_HALT_SYSTEM, RB_POWER_OFF}; + + if (!(toys.optflags & FLAG_n)) sync(); + + toys.exitval = reboot(types[stridx("hp", *toys.which->name)+1]); } -- cgit v1.2.3