diff options
author | Robert Griebl <griebl@gmx.de> | 2004-03-22 21:27:39 +0000 |
---|---|---|
committer | Robert Griebl <griebl@gmx.de> | 2004-03-22 21:27:39 +0000 |
commit | 6bb80870b839cc812d55b28f886bf3e001e4a00e (patch) | |
tree | b1f392198ae0c497b121a4d47579a3be50512225 | |
parent | c8685ead5770b55d66c01df5bc3fe26053caea54 (diff) | |
download | busybox-w32-6bb80870b839cc812d55b28f886bf3e001e4a00e.tar.gz busybox-w32-6bb80870b839cc812d55b28f886bf3e001e4a00e.tar.bz2 busybox-w32-6bb80870b839cc812d55b28f886bf3e001e4a00e.zip |
Some corrections from vodz:
- Make -u/-l mutually exclusive
- Minor size reduction
-rw-r--r-- | util-linux/hwclock.c | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/util-linux/hwclock.c b/util-linux/hwclock.c index cf631131b..1f30ff498 100644 --- a/util-linux/hwclock.c +++ b/util-linux/hwclock.c | |||
@@ -191,7 +191,7 @@ static int check_utc(void) | |||
191 | extern int hwclock_main ( int argc, char **argv ) | 191 | extern int hwclock_main ( int argc, char **argv ) |
192 | { | 192 | { |
193 | unsigned long opt; | 193 | unsigned long opt; |
194 | int utc = 0; | 194 | int utc; |
195 | 195 | ||
196 | #ifdef CONFIG_FEATURE_HWCLOCK_LONGOPTIONS | 196 | #ifdef CONFIG_FEATURE_HWCLOCK_LONGOPTIONS |
197 | static const struct option hwclock_long_options[] = { | 197 | static const struct option hwclock_long_options[] = { |
@@ -205,23 +205,18 @@ static const struct option hwclock_long_options[] = { | |||
205 | bb_applet_long_options = hwclock_long_options; | 205 | bb_applet_long_options = hwclock_long_options; |
206 | #endif | 206 | #endif |
207 | 207 | ||
208 | bb_opt_complementaly = "r~ws:w~rs:s~wr"; | 208 | bb_opt_complementaly = "r~ws:w~rs:s~wr:l~u:u~l"; |
209 | opt = bb_getopt_ulflags(argc, argv, "lursw"); | 209 | opt = bb_getopt_ulflags(argc, argv, "lursw"); |
210 | /* Check only one mode was given */ | 210 | /* Check only one mode was given */ |
211 | if(opt & 0x80000000UL) { | 211 | if(opt & 0x80000000UL) { |
212 | bb_show_usage(); | 212 | bb_show_usage(); |
213 | } | 213 | } |
214 | 214 | ||
215 | /* If -u or -l wasnt give check if we are using utc */ | 215 | /* If -u or -l wasn't given check if we are using utc */ |
216 | if (opt & HWCLOCK_OPT_UTC) { | 216 | if (opt & (HWCLOCK_OPT_UTC | HWCLOCK_OPT_LOCALTIME)) |
217 | utc = 1; | 217 | utc = opt & HWCLOCK_OPT_UTC; |
218 | } | 218 | else |
219 | else if (opt & HWCLOCK_OPT_LOCALTIME) { | ||
220 | utc = 0; | ||
221 | } | ||
222 | else { | ||
223 | utc = check_utc(); | 219 | utc = check_utc(); |
224 | } | ||
225 | 220 | ||
226 | if (opt & HWCLOCK_OPT_HCTOSYS) { | 221 | if (opt & HWCLOCK_OPT_HCTOSYS) { |
227 | return to_sys_clock ( utc ); | 222 | return to_sys_clock ( utc ); |