[SCM] Debian package checker branch, master, updated. 1.24.4-99-g10f4ed5
The following commit has been merged in the master branch:
commit 10f4ed5d37a3196aebeb5d661b2cbd9d2c4456da
Author: Adam D. Barratt <adam@adam-barratt.org.uk>
Date: Wed Sep 3 23:04:36 2008 +0100
collection/objdump-info: Correctly parse readelf version tables containing hidden symbols
Munge "1h(foo)" to "(foo)" and "1h " to "(base)"
diff --git a/collection/objdump-info b/collection/objdump-info
index 42ec472..3f4c335 100755
--- a/collection/objdump-info
+++ b/collection/objdump-info
@@ -149,10 +149,14 @@ while (<FILES>) {
$value =~ s/^(?:Shared library|Library soname): \[(.*)\]/$1/;
print OUT " $type $value\n";
- } elsif (m/^\s*[0-9A-F]+:\s*(\S+)\s*\((\S+)\)(\s|\Z)/i
+ } elsif (m/^\s*[0-9A-F]+:\s+(\S+)\s*(?:\((\S+)\))?(\s|\Z)/i
and $section eq 'VS') {
- while (m/\s(\S+)\s*\((\S+)\)(\s|\Z)/gc) {
+ while (m/([0-9A-F]+h?)\s*(?:\((\S+)\))?(\s|\Z)/gci) {
my ($vernum, $verstring) = ($1, $2);
+ $verstring ||= '';
+ if ($vernum =~ m/h$/) {
+ $verstring = "($verstring)";
+ }
push @symbol_versions, $verstring;
}
} elsif (m/^There is no dynamic section in this file/
@@ -190,6 +194,8 @@ while (<FILES>) {
} else {
$ver = 'Base';
}
+ } elsif ($ver eq '()') {
+ $ver = '(Base)';
}
}
diff --git a/debian/changelog b/debian/changelog
index 393f881..97f55fa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -64,7 +64,9 @@ lintian (2.0.0~rc1) experimental; urgency=low
* collection/objdump-info:
+ [ADB] Correctly handle shared objects with no symbol versioning when
- using readelf.
+ using readelf.
+ + [ADB] Update the readelf version table parsing code to handle hidden
+ symbols.
* frontend/lintian:
+ [RA] Ensure we close the pipe to lintian-info before exiting, since
--
Debian package checker
Reply to: