summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apt/package.py10
-rw-r--r--debian/changelog1
2 files changed, 6 insertions, 5 deletions
diff --git a/apt/package.py b/apt/package.py
index 32480c39..817dfd55 100644
--- a/apt/package.py
+++ b/apt/package.py
@@ -536,13 +536,13 @@ class Version(object):
dsc = None
record = self._records
- src.lookup(record.source_pkg)
+ source_name = record.source_pkg or self.package.name
source_version = record.source_ver or self._cand.ver_str
+ source_lookup = src.lookup(source_name)
- try:
- while source_version != src.version:
- src.lookup(record.source_pkg)
- except AttributeError:
+ while source_lookup and source_version != src.version:
+ source_lookup = src.lookup(source_name)
+ if not source_lookup:
raise ValueError("No source for %r" % self)
files = list()
for md5, size, path, type_ in src.files:
diff --git a/debian/changelog b/debian/changelog
index 0e494a81..5d287831 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,7 @@ python-apt (0.7.94.3) UNRELEASED; urgency=low
[ Julian Andres Klode ]
* apt/package.py:
- Decode using utf-8 in installed_files (LP: #407953).
+ - Fix fetch_source() to work when source name = binary name (LP: #552400).
* python/generic.cc:
- Fix a memory leak when using old attribute names.
- Map ArchiveURI property to archive_uri