Blob Blame History Raw
From f3d446b60a082308ec5aaa2fdc36e31f566081bb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jakub=20=C4=8Cajka?= <jcajka@redhat.com>
Date: Thu, 22 Mar 2018 11:49:09 +0100
Subject: [PATCH 1/3] Don't use the bundled tzdata at runtime, except for the
 internal test suite

---
 src/time/internal_test.go | 7 +++++--
 src/time/zoneinfo_test.go | 3 ++-
 src/time/zoneinfo_unix.go | 2 --
 3 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/time/internal_test.go b/src/time/internal_test.go
index 35ce69b228..1cea04ed7e 100644
--- a/src/time/internal_test.go
+++ b/src/time/internal_test.go
@@ -4,13 +4,15 @@
 
 package time
 
+import "runtime"
+
 func init() {
 	// force US/Pacific for time zone tests
 	ForceUSPacificForTesting()
 }
 
 func initTestingZone() {
-	z, err := loadLocation("America/Los_Angeles", zoneSources[len(zoneSources)-1:])
+	z, err := loadLocation("America/Los_Angeles", zoneSources)
 	if err != nil {
 		panic("cannot load America/Los_Angeles for testing: " + err.Error())
 	}
@@ -21,8 +23,9 @@ func initTestingZone() {
 var OrigZoneSources = zoneSources
 
 func forceZipFileForTesting(zipOnly bool) {
-	zoneSources = make([]string, len(OrigZoneSources))
+	zoneSources = make([]string, len(OrigZoneSources)+1)
 	copy(zoneSources, OrigZoneSources)
+	zoneSources = append(zoneSources, runtime.GOROOT()+"/lib/time/zoneinfo.zip")
 	if zipOnly {
 		zoneSources = zoneSources[len(zoneSources)-1:]
 	}
diff --git a/src/time/zoneinfo_test.go b/src/time/zoneinfo_test.go
index 277b68f798..be2aa6c687 100644
--- a/src/time/zoneinfo_test.go
+++ b/src/time/zoneinfo_test.go
@@ -9,6 +9,7 @@ import (
 	"fmt"
 	"os"
 	"reflect"
+	"runtime"
 	"testing"
 	"time"
 )
@@ -139,7 +140,7 @@ func TestLoadLocationFromTZData(t *testing.T) {
 		t.Fatal(err)
 	}
 
-	tzinfo, err := time.LoadTzinfo(locationName, time.OrigZoneSources[len(time.OrigZoneSources)-1])
+	tzinfo, err := time.LoadTzinfo(locationName, runtime.GOROOT()+"/lib/time/zoneinfo.zip")
 	if err != nil {
 		t.Fatal(err)
 	}
diff --git a/src/time/zoneinfo_unix.go b/src/time/zoneinfo_unix.go
index d2465eef65..b8c934c9a9 100644
--- a/src/time/zoneinfo_unix.go
+++ b/src/time/zoneinfo_unix.go
@@ -12,7 +12,6 @@
 package time
 
 import (
-	"runtime"
 	"syscall"
 )
 
@@ -22,7 +21,6 @@ var zoneSources = []string{
 	"/usr/share/zoneinfo/",
 	"/usr/share/lib/zoneinfo/",
 	"/usr/lib/locale/TZ/",
-	runtime.GOROOT() + "/lib/time/zoneinfo.zip",
 }
 
 func initLocal() {
-- 
2.26.2