Fix pool directory for packages with version in Source: field. #44

This commit is contained in:
Andrey Smirnov
2014-05-10 17:25:44 +04:00
parent 49eed59238
commit 5301e8a341
2 changed files with 8 additions and 0 deletions
+2
View File
@@ -411,6 +411,8 @@ func (p *Package) PoolDirectory() (string, error) {
source := p.Source source := p.Source
if source == "" { if source == "" {
source = p.Name source = p.Name
} else if pos := strings.Index(source, "("); pos != -1 {
source = strings.TrimSpace(source[:pos])
} }
if len(source) < 2 { if len(source) < 2 {
+6
View File
@@ -230,6 +230,12 @@ func (s *PackageSuite) TestPoolDirectory(c *C) {
c.Check(err, IsNil) c.Check(err, IsNil)
c.Check(dir, Equals, "liba/libarena") c.Check(dir, Equals, "liba/libarena")
p = NewPackageFromControlFile(packageStanza.Copy())
p.Source = "gcc-defaults (1.77)"
dir, err = p.PoolDirectory()
c.Check(err, IsNil)
c.Check(dir, Equals, "g/gcc-defaults")
p = NewPackageFromControlFile(packageStanza.Copy()) p = NewPackageFromControlFile(packageStanza.Copy())
p.Source = "l" p.Source = "l"
_, err = p.PoolDirectory() _, err = p.PoolDirectory()