Skip to content

Commit 4e4c0b7

Browse files
committed
refactor(uucore): avoid unwrap in system_time_to_sec
1 parent cef1364 commit 4e4c0b7

1 file changed

Lines changed: 7 additions & 7 deletions

File tree

‎src/uucore/src/lib/features/time.rs‎

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ fn format_zoned<W: Write>(out: &mut W, zoned: Zoned, fmt: &str) -> UResult<()> {
2727

2828
/// Convert a SystemTime` to a number of seconds since UNIX_EPOCH
2929
pub fn system_time_to_sec(time: SystemTime) -> (i64, u32) {
30-
if time > UNIX_EPOCH {
31-
let d = time.duration_since(UNIX_EPOCH).unwrap();
32-
(d.as_secs() as i64, d.subsec_nanos())
33-
} else {
34-
let d = UNIX_EPOCH.duration_since(time).unwrap();
35-
(-(d.as_secs() as i64), d.subsec_nanos())
36-
}
30+
time.duration_since(UNIX_EPOCH).map_or_else(
31+
|e| {
32+
let d = e.duration();
33+
(-(d.as_secs() as i64), d.subsec_nanos())
34+
},
35+
|d| (d.as_secs() as i64, d.subsec_nanos()),
36+
)
3737
}
3838

3939
pub mod format {

0 commit comments

Comments
 (0)