@@ -58,22 +58,26 @@ func updateIndexes() {
58
58
// TODO: This should be in packagemanager......
59
59
func updateIndex (URL * url.URL ) {
60
60
logrus .WithField ("url" , URL ).Print ("Updating index" )
61
- indexDirPath := commands .Config .IndexesDir ()
62
- coreIndexPath := indexDirPath .Join (path .Base (URL .Path ))
63
61
64
62
tmpFile , err := ioutil .TempFile ("" , "" )
65
63
if err != nil {
66
64
formatter .PrintError (err , "Error creating temp file for download" )
67
65
os .Exit (commands .ErrGeneric )
68
66
}
69
- defer os .Remove (tmpFile .Name ())
70
- tmpFile .Close ()
67
+ if err := tmpFile .Close (); err != nil {
68
+ formatter .PrintError (err , "Error creating temp file for download" )
69
+ os .Exit (commands .ErrGeneric )
70
+ }
71
+ tmp := paths .New (tmpFile .Name ())
72
+ defer tmp .Remove ()
71
73
72
- d , err := downloader .Download (tmpFile . Name (), URL .String ())
74
+ d , err := downloader .Download (tmp . String (), URL .String ())
73
75
if err != nil {
74
76
formatter .PrintError (err , "Error downloading index " + URL .String ())
75
77
os .Exit (commands .ErrNetwork )
76
78
}
79
+ indexDirPath := commands .Config .IndexesDir ()
80
+ coreIndexPath := indexDirPath .Join (path .Base (URL .Path ))
77
81
formatter .DownloadProgressBar (d , "Updating index: " + coreIndexPath .Base ())
78
82
if d .Error () != nil {
79
83
formatter .PrintError (d .Error (), "Error downloading index " + URL .String ())
@@ -85,7 +89,7 @@ func updateIndex(URL *url.URL) {
85
89
os .Exit (commands .ErrGeneric )
86
90
}
87
91
88
- if err := paths . New ( tmpFile . Name ()) .CopyTo (coreIndexPath ); err != nil {
92
+ if err := tmp .CopyTo (coreIndexPath ); err != nil {
89
93
formatter .PrintError (err , "Error saving downloaded index " + URL .String ())
90
94
os .Exit (commands .ErrGeneric )
91
95
}
0 commit comments