From 1b80d55ea4c5cb8a34fc8077afdf5e549c2e930c Mon Sep 17 00:00:00 2001 From: Szymon Sobik Date: Wed, 8 Mar 2017 10:31:44 +0100 Subject: [PATCH] since -dbgsym is for each binary package use that for PackageQuery --- deb/changes.go | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/deb/changes.go b/deb/changes.go index d90874e5..67482e99 100644 --- a/deb/changes.go +++ b/deb/changes.go @@ -179,18 +179,24 @@ func (c *Changes) PackageQuery() (PackageQuery, error) { var binaryQuery PackageQuery if len(c.Binary) > 0 { binaryQuery = &FieldQuery{Field: "Name", Relation: VersionEqual, Value: c.Binary[0]} + // matching debug ddeb packages, they're not present in the Binary field + var ddebQuery PackageQuery + ddebQuery = &FieldQuery{Field: "Name", Relation: VersionEqual, Value: fmt.Sprintf("%s-dbgsym", c.Binary[0])} + for _, binary := range c.Binary[1:] { binaryQuery = &OrQuery{ L: &FieldQuery{Field: "Name", Relation: VersionEqual, Value: binary}, R: binaryQuery, } + ddebQuery = &OrQuery{ + L: &FieldQuery{Field: "Name", Relation: VersionEqual, Value: fmt.Sprintf("%s-dbgsym", binary)}, + R: ddebQuery, + } } - // matching debug ddeb packages, they're not present in the Binary field - var ddebQuery PackageQuery ddebQuery = &AndQuery{ - L: &FieldQuery{Field: "Name", Relation: VersionPatternMatch, Value: "*-dbgsym"}, - R: &FieldQuery{Field: "Source", Relation: VersionEqual, Value: c.Source}, + L: &FieldQuery{Field: "Source", Relation: VersionEqual, Value: c.Source}, + R: ddebQuery, } binaryQuery = &OrQuery{