[SCM] Debian Qt/KDE packaging tools branch, master, updated. debian/0.6.8-7-g821e1f9
Modestas Vainius
modax at alioth.debian.org
Sat Mar 13 17:39:34 UTC 2010
The following commit has been merged in the master branch:
commit d29b59eb6d9847999fecc3f94a18f195efb50a71
Author: Modestas Vainius <modestas at vainius.eu>
Date: Wed Mar 3 23:55:52 2010 +0200
pkgkde-symbolshelper: fix bug in handling of "incomplete subst detection".
`pkgkde-symbolshelper *`: properly handle the case when some substs have been
detected but symbols differences still remain (rare variant of "possible
incomplete subst detection"). libakonadi-kde4 in kdepimlibs was hit by this
bug.
---
debian/changelog | 4 ++++
.../PkgKde/SymbolsHelper/Substs/TypeSubst.pm | 2 +-
.../PkgKde/SymbolsHelper/SymbolFileCollection.pm | 18 +++++++++++++++++-
3 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 008d597..5224a18 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,9 @@
pkg-kde-tools (0.6.9~pre1) UNRELEASED; urgency=low
+ * `pkgkde-symbolshelper *`: properly handle the case when some substs have
+ been detected but symbols differences still remain (rare variant of
+ "possible incomplete subst detection"). libakonadi-kde4 in kdepimlibs was
+ hit by this bug.
-- Modestas Vainius <modax at debian.org> Wed, 03 Mar 2010 23:43:10 +0200
diff --git a/symbolshelper/Debian/PkgKde/SymbolsHelper/Substs/TypeSubst.pm b/symbolshelper/Debian/PkgKde/SymbolsHelper/Substs/TypeSubst.pm
index 2028b9a..92af20a 100644
--- a/symbolshelper/Debian/PkgKde/SymbolsHelper/Substs/TypeSubst.pm
+++ b/symbolshelper/Debian/PkgKde/SymbolsHelper/Substs/TypeSubst.pm
@@ -64,7 +64,7 @@ sub hinted_neutralize {
for (my $i = 0; $i < @$hintstr; $i++) {
if (defined $hintstr->[$i] && $hintstr->[$i] eq $self->{substvar}) {
- $rawname->substr($i, $l, $self->{types}->[0]);
+ $rawname->substr($i, $l, $self->{types}->[0], $self->{substvar});
$ret = 1;
}
}
diff --git a/symbolshelper/Debian/PkgKde/SymbolsHelper/SymbolFileCollection.pm b/symbolshelper/Debian/PkgKde/SymbolsHelper/SymbolFileCollection.pm
index 64bf2c1..372942e 100644
--- a/symbolshelper/Debian/PkgKde/SymbolsHelper/SymbolFileCollection.pm
+++ b/symbolshelper/Debian/PkgKde/SymbolsHelper/SymbolFileCollection.pm
@@ -321,7 +321,22 @@ sub create_template {
my $substs_sym = $group->get_symbol($substs_arch);
$sym->add_tag("subst");
$sym->reset_h_name($substs_sym->get_h_name());
- $substs_ok = $group->verify_substs();
+ # Properly handle the case when *some substs have been*
+ # detected but symbols in the group still differ. Since
+ # the symbols will be grouped, we need to add a subst
+ # tag to all of them and reset h_name of the orig
+ # symbol since it is not touched by substs detection.
+ unless ($substs_ok = $group->verify_substs()) {
+ foreach my $sym ($group->get_symbols()) {
+ $sym->add_tag("subst");
+ }
+ if ($orig_arch eq $substs_arch) {
+ $group->get_symbol()->add_tag("subst");
+ $group->get_symbol()->reset_h_name(
+ $substs_sym->get_h_name()
+ );
+ }
+ }
}
} else {
$substs_ok = 1;
@@ -335,6 +350,7 @@ sub create_template {
foreach my $sym ($group->get_symbols()) {
$sym->resync_name_with_h_name();
}
+ $group->get_symbol()->resync_name_with_h_name() if $group->get_symbol();
if (my @byname = $self->get_symbols_regrouped_by_name($group)) {
$template->add_symbol($_, $soname) foreach @byname;
info("possible incomplete subst detection (%s). Processed by name:\n" .
--
Debian Qt/KDE packaging tools
More information about the pkg-kde-commits
mailing list