ics: fix Utc to Local timezone conversion
This commit is contained in:
parent
26be1853ce
commit
853656208d
|
@ -1,7 +1,7 @@
|
|||
use std::collections::{HashMap, HashSet};
|
||||
use std::fmt::Write;
|
||||
use std::str::FromStr;
|
||||
use chrono::{DateTime, NaiveDate, NaiveDateTime, Utc};
|
||||
use chrono::{DateTime, NaiveDate, NaiveDateTime, Local, Utc};
|
||||
|
||||
mod tokenizer;
|
||||
mod parser;
|
||||
|
@ -94,7 +94,10 @@ impl FromStr for Timestamp {
|
|||
|
||||
fn from_str(s: &'_ str) -> Result<Self, Self::Err> {
|
||||
NaiveDateTime::parse_from_str(s, "%Y%m%dT%H%M%SZ")
|
||||
.map(|time| DateTime::<Utc>::from_utc(time, Utc).naive_local())
|
||||
.map(|time| DateTime::<Utc>::from_utc(time, Utc)
|
||||
.with_timezone(&Local)
|
||||
.naive_local()
|
||||
)
|
||||
.or_else(|_| NaiveDateTime::parse_from_str(s, "%Y%m%dT%H%M%S"))
|
||||
.map(Timestamp::DateTime)
|
||||
.or_else(|_|
|
||||
|
|
Loading…
Reference in New Issue