diff --git a/source/dub/packagemanager.d b/source/dub/packagemanager.d index 0b82866..2eae4c0 100644 --- a/source/dub/packagemanager.d +++ b/source/dub/packagemanager.d @@ -291,7 +291,7 @@ final switch (repo.kind) { case repo.Kind.git: - pack = loadGitPackage(name, repo.ref_, repo.remote); + pack = loadGitPackage(name, repo); } if (pack !is null) { addPackages(m_temporaryPackages, pack); @@ -299,18 +299,18 @@ return pack; } - private Package loadGitPackage(string name, string versionSpec, string remote) + private Package loadGitPackage(string name, in Repository repo) { import dub.internal.git : cloneRepository; - if (!versionSpec.startsWith("~") && !versionSpec.isGitHash) { + if (!repo.ref_.startsWith("~") && !repo.ref_.isGitHash) { return null; } - string gitReference = versionSpec.chompPrefix("~"); + string gitReference = repo.ref_.chompPrefix("~"); NativePath destination = getPackagePath( m_repositories[PlacementLocation.user].packagePath, - name, versionSpec); + name, repo.ref_); // For libraries leaking their import path destination ~= name; destination.endsWithSlash = true; @@ -321,7 +321,7 @@ } } - if (!cloneRepository(remote, gitReference, destination.toNativeString())) { + if (!cloneRepository(repo.remote, gitReference, destination.toNativeString())) { return null; }