mirror of
https://github.com/aptly-dev/aptly.git
synced 2026-06-10 06:14:22 +00:00
Correctly prepend directory to filenames of source package files.
This commit is contained in:
Vendored
+8
-6
@@ -152,11 +152,12 @@ func NewSourcePackageFromControlFile(input Stanza) (*Package, error) {
|
|||||||
return fmt.Errorf("unable to parse size: %s", err)
|
return fmt.Errorf("unable to parse size: %s", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
filename := filepath.Join(input["Directory"], parts[2])
|
||||||
|
|
||||||
found := false
|
found := false
|
||||||
pos := 0
|
pos := 0
|
||||||
|
|
||||||
for i, file := range result.Files {
|
for i, file := range result.Files {
|
||||||
if file.Filename == parts[2] {
|
if file.Filename == filename {
|
||||||
found = true
|
found = true
|
||||||
pos = i
|
pos = i
|
||||||
break
|
break
|
||||||
@@ -164,7 +165,7 @@ func NewSourcePackageFromControlFile(input Stanza) (*Package, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if !found {
|
if !found {
|
||||||
result.Files = append(result.Files, PackageFile{Filename: parts[2]})
|
result.Files = append(result.Files, PackageFile{Filename: filename})
|
||||||
pos = len(result.Files) - 1
|
pos = len(result.Files) - 1
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -267,9 +268,10 @@ func (p *Package) Stanza() (result Stanza) {
|
|||||||
md5, sha1, sha256 := make([]string, len(p.Files)), make([]string, len(p.Files)), make([]string, len(p.Files))
|
md5, sha1, sha256 := make([]string, len(p.Files)), make([]string, len(p.Files)), make([]string, len(p.Files))
|
||||||
|
|
||||||
for i, f := range p.Files {
|
for i, f := range p.Files {
|
||||||
md5[i] = fmt.Sprintf(" %s %d %s\n", f.Checksums.MD5, f.Checksums.Size, f.Filename)
|
base := filepath.Base(f.Filename)
|
||||||
sha1[i] = fmt.Sprintf(" %s %d %s\n", f.Checksums.SHA1, f.Checksums.Size, f.Filename)
|
md5[i] = fmt.Sprintf(" %s %d %s\n", f.Checksums.MD5, f.Checksums.Size, base)
|
||||||
sha256[i] = fmt.Sprintf(" %s %d %s\n", f.Checksums.SHA256, f.Checksums.Size, f.Filename)
|
sha1[i] = fmt.Sprintf(" %s %d %s\n", f.Checksums.SHA1, f.Checksums.Size, base)
|
||||||
|
sha256[i] = fmt.Sprintf(" %s %d %s\n", f.Checksums.SHA256, f.Checksums.Size, base)
|
||||||
}
|
}
|
||||||
|
|
||||||
result["Files"] = strings.Join(md5, "")
|
result["Files"] = strings.Join(md5, "")
|
||||||
|
|||||||
Vendored
+3
-3
@@ -87,19 +87,19 @@ func (s *PackageSuite) TestNewSourceFromPara(c *C) {
|
|||||||
c.Check(p.BuildDependsInDep, DeepEquals, []string{"default-jdk-doc", "junit (>= 3.8.1)", "libannotation-indexer-java (>= 1.3)", "libannotation-indexer-java-doc", "libasm3-java", "libmaven-install-plugin-java", "libmaven-javadoc-plugin-java", "libmaven-scm-java", "libmaven2-core-java", "libmaven2-core-java-doc", "libmetainf-services-java", "libmetainf-services-java-doc", "libmaven-plugin-tools-java (>= 2.8)"})
|
c.Check(p.BuildDependsInDep, DeepEquals, []string{"default-jdk-doc", "junit (>= 3.8.1)", "libannotation-indexer-java (>= 1.3)", "libannotation-indexer-java-doc", "libasm3-java", "libmaven-install-plugin-java", "libmaven-javadoc-plugin-java", "libmaven-scm-java", "libmaven2-core-java", "libmaven2-core-java-doc", "libmetainf-services-java", "libmetainf-services-java-doc", "libmaven-plugin-tools-java (>= 2.8)"})
|
||||||
c.Check(p.Files, HasLen, 3)
|
c.Check(p.Files, HasLen, 3)
|
||||||
|
|
||||||
c.Check(p.Files[0].Filename, Equals, "access-modifier-checker_1.0-4.dsc")
|
c.Check(p.Files[0].Filename, Equals, "pool/main/a/access-modifier-checker/access-modifier-checker_1.0-4.dsc")
|
||||||
c.Check(p.Files[0].Checksums.Size, Equals, int64(2583))
|
c.Check(p.Files[0].Checksums.Size, Equals, int64(2583))
|
||||||
c.Check(p.Files[0].Checksums.MD5, Equals, "eb2a7a57c92ebac9d3d1c2d2d719f290")
|
c.Check(p.Files[0].Checksums.MD5, Equals, "eb2a7a57c92ebac9d3d1c2d2d719f290")
|
||||||
c.Check(p.Files[0].Checksums.SHA1, Equals, "a70b87bba4391c0138cc9cc75efa747c4eeea2d7")
|
c.Check(p.Files[0].Checksums.SHA1, Equals, "a70b87bba4391c0138cc9cc75efa747c4eeea2d7")
|
||||||
c.Check(p.Files[0].Checksums.SHA256, Equals, "36ae7f68974bd69450229244510faa8f8056709913770218821069e6cce6b4b8")
|
c.Check(p.Files[0].Checksums.SHA256, Equals, "36ae7f68974bd69450229244510faa8f8056709913770218821069e6cce6b4b8")
|
||||||
|
|
||||||
c.Check(p.Files[1].Filename, Equals, "access-modifier-checker_1.0.orig.tar.gz")
|
c.Check(p.Files[1].Filename, Equals, "pool/main/a/access-modifier-checker/access-modifier-checker_1.0.orig.tar.gz")
|
||||||
c.Check(p.Files[1].Checksums.Size, Equals, int64(10049))
|
c.Check(p.Files[1].Checksums.Size, Equals, int64(10049))
|
||||||
c.Check(p.Files[1].Checksums.MD5, Equals, "f280abdc753beea4243d99530f023f12")
|
c.Check(p.Files[1].Checksums.MD5, Equals, "f280abdc753beea4243d99530f023f12")
|
||||||
c.Check(p.Files[1].Checksums.SHA1, Equals, "c5bea16095ae1685941193370d20756e036d61a7")
|
c.Check(p.Files[1].Checksums.SHA1, Equals, "c5bea16095ae1685941193370d20756e036d61a7")
|
||||||
c.Check(p.Files[1].Checksums.SHA256, Equals, "9d362301892bd647a361755bde28f0a39644a5bbb2ff5300060373ee29d9d87a")
|
c.Check(p.Files[1].Checksums.SHA256, Equals, "9d362301892bd647a361755bde28f0a39644a5bbb2ff5300060373ee29d9d87a")
|
||||||
|
|
||||||
c.Check(p.Files[2].Filename, Equals, "access-modifier-checker_1.0-4.debian.tar.gz")
|
c.Check(p.Files[2].Filename, Equals, "pool/main/a/access-modifier-checker/access-modifier-checker_1.0-4.debian.tar.gz")
|
||||||
|
|
||||||
c.Check(p.Depends, IsNil)
|
c.Check(p.Depends, IsNil)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user