From 5301e8a341385009ff93e4be908d248311ede5e9 Mon Sep 17 00:00:00 2001 From: Andrey Smirnov Date: Sat, 10 May 2014 17:25:44 +0400 Subject: [PATCH] Fix pool directory for packages with version in Source: field. #44 --- deb/package.go | 2 ++ deb/package_test.go | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/deb/package.go b/deb/package.go index a50ce44f..f52042ec 100644 --- a/deb/package.go +++ b/deb/package.go @@ -411,6 +411,8 @@ func (p *Package) PoolDirectory() (string, error) { source := p.Source if source == "" { source = p.Name + } else if pos := strings.Index(source, "("); pos != -1 { + source = strings.TrimSpace(source[:pos]) } if len(source) < 2 { diff --git a/deb/package_test.go b/deb/package_test.go index 0105d4b7..4c47ac04 100644 --- a/deb/package_test.go +++ b/deb/package_test.go @@ -230,6 +230,12 @@ func (s *PackageSuite) TestPoolDirectory(c *C) { c.Check(err, IsNil) 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.Source = "l" _, err = p.PoolDirectory()