From a8be61cdbb09a895f48884a1567a8e6aa2694381 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Guillot?= <fred@miniflux.net>
Date: Sun, 4 Mar 2018 17:38:08 -0800
Subject: [PATCH] Filter the list of timezones

---
 storage/timezone.go | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/storage/timezone.go b/storage/timezone.go
index 949a6af3..396c7d41 100644
--- a/storage/timezone.go
+++ b/storage/timezone.go
@@ -6,6 +6,7 @@ package storage
 
 import (
 	"fmt"
+	"strings"
 	"time"
 
 	"github.com/miniflux/miniflux/timer"
@@ -14,10 +15,8 @@ import (
 // Timezones returns all timezones supported by the database.
 func (s *Storage) Timezones() (map[string]string, error) {
 	defer timer.ExecutionTime(time.Now(), "[Storage:Timezones]")
-
 	timezones := make(map[string]string)
-	query := `select name from pg_timezone_names() order by name asc`
-	rows, err := s.db.Query(query)
+	rows, err := s.db.Query(`SELECT name FROM pg_timezone_names() ORDER BY name ASC`)
 	if err != nil {
 		return nil, fmt.Errorf("unable to fetch timezones: %v", err)
 	}
@@ -29,7 +28,9 @@ func (s *Storage) Timezones() (map[string]string, error) {
 			return nil, fmt.Errorf("unable to fetch timezones row: %v", err)
 		}
 
-		timezones[timezone] = timezone
+		if !strings.HasPrefix(timezone, "posix") && !strings.HasPrefix(timezone, "SystemV") && timezone != "localtime" {
+			timezones[timezone] = timezone
+		}
 	}
 
 	return timezones, nil
-- 
GitLab