From 4c560020bc0c50f8004873be8adf83698b7c095a Mon Sep 17 00:00:00 2001
From: =?utf8?q?Bj=C3=B8rn=20Erik=20Pedersen?=
 <bjorn.erik.pedersen@gmail.com>
Date: Wed, 29 May 2019 22:33:03 +0200
Subject: [PATCH] resources: Return nil when not found in resources.Get

Fixes #5999
---
 hugolib/resource_chain_test.go | 5 +++++
 resources/resource.go          | 3 +++
 2 files changed, 8 insertions(+)

diff --git a/hugolib/resource_chain_test.go b/hugolib/resource_chain_test.go
index e22121b7..5a8ac22d 100644
--- a/hugolib/resource_chain_test.go
+++ b/hugolib/resource_chain_test.go
@@ -356,6 +356,11 @@ CSV2: {{ $csv2 }}
 				`CSV2: [[a b c]]`,
 			)
 		}},
+		{"resources.Get", func() bool { return true }, func(b *sitesBuilder) {
+			b.WithTemplates("home.html", `NOT FOUND: {{ if (resources.Get "this-does-not-exist") }}FAILED{{ else }}OK{{ end }}`)
+		}, func(b *sitesBuilder) {
+			b.AssertFileContent("public/index.html", "NOT FOUND: OK")
+		}},
 
 		{"template", func() bool { return true }, func(b *sitesBuilder) {}, func(b *sitesBuilder) {
 		}},
diff --git a/resources/resource.go b/resources/resource.go
index abd25154..c120a8dd 100644
--- a/resources/resource.go
+++ b/resources/resource.go
@@ -200,6 +200,9 @@ func (r *Spec) newResource(sourceFs afero.Fs, fd ResourceSourceDescriptor) (reso
 		var err error
 		fi, err = sourceFs.Stat(fd.SourceFilename)
 		if err != nil {
+			if os.IsNotExist(err) {
+				return nil, nil
+			}
 			return nil, err
 		}
 		sourceFilename = fd.SourceFilename
-- 
2.30.2