diff --git a/spec/package-manager-spec.coffee b/spec/package-manager-spec.coffee index 6a1610a8a..f68005cf5 100644 --- a/spec/package-manager-spec.coffee +++ b/spec/package-manager-spec.coffee @@ -66,6 +66,9 @@ describe "PackageManager", -> expect(addErrorHandler.argsForCall[0][0].message).toContain("Failed to load the package-with-broken-package-json package") expect(addErrorHandler.argsForCall[0][0].options.packageName).toEqual "package-with-broken-package-json" + it "returns null if the package name or path starts with a dot", -> + expect(atom.packages.loadPackage("/Users/user/.atom/packages/.git")).toBeNull() + it "normalizes short repository urls in package.json", -> {metadata} = atom.packages.loadPackage("package-with-short-url-package-json") expect(metadata.repository.type).toBe "git" diff --git a/src/package-manager.coffee b/src/package-manager.coffee index 0e76a762f..8f2924358 100644 --- a/src/package-manager.coffee +++ b/src/package-manager.coffee @@ -367,6 +367,8 @@ class PackageManager @emitter.emit 'did-load-initial-packages' loadPackage: (nameOrPath) -> + return null if path.basename(nameOrPath)[0].match /^\./ # primarily to skip .git folder + return pack if pack = @getLoadedPackage(nameOrPath) if packagePath = @resolvePackagePath(nameOrPath)