summaryrefslogtreecommitdiff
path: root/scripts/Makefile.am
diff options
context:
space:
mode:
authorRaphaël Hertzog <hertzog@debian.org>2011-07-20 08:29:05 +0200
committerRaphaël Hertzog <hertzog@debian.org>2011-07-20 08:29:14 +0200
commite135afdb35d0ac179657def901965a448115a981 (patch)
treec2c087486df21ace8fd77db9d56029023f9a2f06 /scripts/Makefile.am
parente6b7685a540c24da1f6357fe8869602d84444aee (diff)
downloaddpkg-e135afdb35d0ac179657def901965a448115a981.tar.gz
dpkg: fix possible segfault in findbreakcycle().
The circumstances are not entirely clear because clear_istobes() is called earlier in the code and should already ensure that clientdata is allocated for all packages in the database but the stack trace reported leaves no room for any other interpretation. We must protect the access to tpkg->clientdata in findbreakcycle() with ensure_package_clientdata(tpkg). Probably that some other parts of the code might create new packages in the in-memory database depending on some specific conditions. It might be that those conditions only hold for a multiarch-enabled dpkg for example if the code looks up a package entry for an alternative architecture and would thus create the package on the fly. This is pure speculation because I did not push the investigations that far. It might be something entirely different but it doesn't matter much because the proposed fix is the same and just ensures that we respect our API by protecting the access to clientdata. See https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/733414 for details.
Diffstat (limited to 'scripts/Makefile.am')
0 files changed, 0 insertions, 0 deletions