diff --git a/utils/librarypath/librarypath.go b/utils/librarypath/librarypath.go index 4e4abe2d..acc30d73 100644 --- a/utils/librarypath/librarypath.go +++ b/utils/librarypath/librarypath.go @@ -75,8 +75,8 @@ func processBrowsingPath( ) []string { var packagePath = filepath.Join(basePath, value.Name(), consts.FilePackage) if _, err := os.Stat(packagePath); !os.IsNotExist(err) { - other, _ := pkgmanager.LoadPackageOther(packagePath) - if other.BrowsingPath != "" { + other, err := pkgmanager.LoadPackageOther(packagePath) + if err == nil && other != nil && other.BrowsingPath != "" { dir := filepath.Join(basePath, value.Name(), other.BrowsingPath) paths = getNewBrowsingPathsFromDir(dir, paths, fullPath, rootPath) if setReadOnly { @@ -116,8 +116,12 @@ func GetNewPaths(paths []string, fullPath bool, rootPath string) []string { for _, value := range matches { var packagePath = filepath.Join(path, value.Name(), consts.FilePackage) if _, err := os.Stat(packagePath); !os.IsNotExist(err) { - other, _ := pkgmanager.LoadPackageOther(packagePath) - paths = getNewPathsFromDir(filepath.Join(path, value.Name(), other.MainSrc), paths, fullPath, rootPath) + other, err := pkgmanager.LoadPackageOther(packagePath) + if err == nil && other != nil { + paths = getNewPathsFromDir(filepath.Join(path, value.Name(), other.MainSrc), paths, fullPath, rootPath) + } else { + paths = getNewPathsFromDir(filepath.Join(path, value.Name()), paths, fullPath, rootPath) + } } else { paths = getNewPathsFromDir(filepath.Join(path, value.Name()), paths, fullPath, rootPath) }