From b160d10b53acdd570fefc3b675d2936f6c9d9623 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Fri, 18 Feb 2022 19:35:16 +0300 Subject: [PATCH] Latest post time should be the directory mtime Because some feeds has older feed's datetime than its posts ones. --- cmd/feed2mdir/main.go | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/cmd/feed2mdir/main.go b/cmd/feed2mdir/main.go index 5e538ba..2699d6c 100644 --- a/cmd/feed2mdir/main.go +++ b/cmd/feed2mdir/main.go @@ -58,6 +58,7 @@ func main() { news := 0 var when *time.Time now := time.Now() + latest := &time.Time{} for n, item := range feed.Items { if n == int(*maxEntries) { break @@ -70,6 +71,9 @@ func main() { } else { when = &now } + if latest.Before(*when) { + latest = when + } var what string if len(item.Content) == 0 { what = item.Description @@ -143,17 +147,9 @@ func main() { } news++ } - when = nil - if feed.PublishedParsed != nil { - when = feed.PublishedParsed - } else if feed.UpdatedParsed != nil { - when = feed.UpdatedParsed - } - if when != nil { - for _, d := range []string{"cur", "new"} { - if err = os.Chtimes(path.Join(mdir, d), *when, *when); err != nil { - log.Fatalln(err) - } + for _, d := range []string{"cur", "new"} { + if err = os.Chtimes(path.Join(mdir, d), *latest, *latest); err != nil { + log.Fatalln(err) } } fmt.Println(feed.Title) -- 2.44.0