@@ -182,10 +182,13 @@ func (platform *Platform) latestReleaseVersion() *semver.Version {
182182// GetAllInstalled returns all installed PlatformRelease
183183func (platform * Platform ) GetAllInstalled () []* PlatformRelease {
184184 res := []* PlatformRelease {}
185- for _ , release := range platform .Releases {
186- if release .IsInstalled () {
187- res = append (res , release )
185+ if platform .Releases != nil {
186+ for _ , release := range platform .Releases {
187+ if release .IsInstalled () {
188+ res = append (res , release )
189+ }
188190 }
191+
189192 }
190193 return res
191194}
@@ -225,17 +228,23 @@ func (release *PlatformRelease) RequiresToolRelease(toolRelease *ToolRelease) bo
225228// RuntimeProperties returns the runtime properties for this PlatformRelease
226229func (release * PlatformRelease ) RuntimeProperties () * properties.Map {
227230 res := properties .NewMap ()
228- res .Set ("runtime.platform.path" , release .InstallDir .String ())
231+ if release .InstallDir != nil {
232+ res .Set ("runtime.platform.path" , release .InstallDir .String ())
233+ }
234+
229235 return res
230236}
231237
232238// GetLibrariesDir returns the path to the core libraries or nil if not
233239// present
234240func (release * PlatformRelease ) GetLibrariesDir () * paths.Path {
235- libDir := release .InstallDir .Join ("libraries" )
236- if libDir .IsDir () {
237- return libDir
241+ if release .InstallDir != nil {
242+ libDir := release .InstallDir .Join ("libraries" )
243+ if libDir .IsDir () {
244+ return libDir
245+ }
238246 }
247+
239248 return nil
240249}
241250
0 commit comments