From 2643d22aaac3bd85926e1592fcde5df8a7136c8c Mon Sep 17 00:00:00 2001 From: Avi Miller Date: Tue, 20 Dec 2016 12:14:10 +1100 Subject: [PATCH] Updated fetcher and tests to close the file handles and HTTP response. Signed-off-by: Avi Miller --- updater/fetchers/oracle/oracle.go | 1 + updater/fetchers/oracle/oracle_test.go | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/updater/fetchers/oracle/oracle.go b/updater/fetchers/oracle/oracle.go index f7525f60..5d8f942c 100644 --- a/updater/fetchers/oracle/oracle.go +++ b/updater/fetchers/oracle/oracle.go @@ -105,6 +105,7 @@ func (f *OracleFetcher) FetchUpdate(datastore database.Datastore) (resp updater. log.Errorf("could not download Oracle's update list: %s", err) return resp, cerrors.ErrCouldNotDownload } + defer r.Body.Close() // Get the list of ELSAs that we have to process. var elsaList []int diff --git a/updater/fetchers/oracle/oracle_test.go b/updater/fetchers/oracle/oracle_test.go index adb77a09..70855fdf 100644 --- a/updater/fetchers/oracle/oracle_test.go +++ b/updater/fetchers/oracle/oracle_test.go @@ -31,6 +31,8 @@ func TestOracleParser(t *testing.T) { // Test parsing testdata/fetcher_oracle_test.1.xml testFile, _ := os.Open(path + "/testdata/fetcher_oracle_test.1.xml") + defer testFile.Close() + vulnerabilities, err := parseELSA(testFile) if assert.Nil(t, err) && assert.Len(t, vulnerabilities, 1) { assert.Equal(t, "ELSA-2015-1193", vulnerabilities[0].Name) @@ -67,8 +69,10 @@ func TestOracleParser(t *testing.T) { } } - testFile, _ = os.Open(path + "/testdata/fetcher_oracle_test.2.xml") - vulnerabilities, err = parseELSA(testFile) + testFile2, _ := os.Open(path + "/testdata/fetcher_oracle_test.2.xml") + defer testFile2.Close() + + vulnerabilities, err = parseELSA(testFile2) if assert.Nil(t, err) && assert.Len(t, vulnerabilities, 1) { assert.Equal(t, "ELSA-2015-1207", vulnerabilities[0].Name) assert.Equal(t, "http://linux.oracle.com/errata/ELSA-2015-1207.html", vulnerabilities[0].Link)