aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--rpmtools.pm4
-rw-r--r--rpmtools.spec5
2 files changed, 6 insertions, 3 deletions
diff --git a/rpmtools.pm b/rpmtools.pm
index 5c8445d..bf86eb8 100644
--- a/rpmtools.pm
+++ b/rpmtools.pm
@@ -146,13 +146,13 @@ sub build_hdlist {
foreach (@rpms) {
my ($key) = /([^\/]*)\.rpm$/ or next; #- get rpm filename.
- system("rpm2header '$_' > '$dir/$key'") unless -e "$dir/$key";
+ system("rpm2header '$_' > '$dir/$key'") unless -s "$dir/$key";
$? == 0 or unlink("$dir/$key"), die "bad rpm $_\n";
-s "$dir/$key" or unlink("$dir/$key"), die "bad rpm $_\n";
my ($name, $version, $release, $arch) = $key =~ /(.*)-([^-]*)-([^-]*)\.([^\.]*)$/;
my ($realname, $realversion, $realrelease, $realarch) =
- `parsehdlist --raw '$dir/$key'` =~ /(.*)-([^-]*)-([^-]*)\.([^\.]*)\.rpm$/;
+ `parsehdlist --raw --name '$dir/$key'` =~ /:name:([^\:]*)-([^\:\-]*)-([^\:\-]*)\.([^\-\.\:\s]*)(?::.*\.rpm)?$/;
unless (length($name) && length($version) && length($release) && length($arch) &&
$name eq $realname && $version eq $realversion && $release eq $realrelease && $arch eq $realarch) {
my $newkey = "$realname-$realversion-$realrelease.$realarch:$key";
diff --git a/rpmtools.spec b/rpmtools.spec
index af888ed..c4c95f5 100644
--- a/rpmtools.spec
+++ b/rpmtools.spec
@@ -1,5 +1,5 @@
%define name rpmtools
-%define release 5mdk
+%define release 6mdk
# do not modify here, see Makefile in the CVS
%define version 3.1
@@ -54,6 +54,9 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/perl5/man/*/*
%changelog
+* Fri Nov 16 2001 François Pons <fpons@mandrakesoft.com> 3.1-6mdk
+- fixed bad generation of hdlist for non standard rpm filename.
+
* Wed Nov 14 2001 François Pons <fpons@mandrakesoft.com> 3.1-5mdk
- changed --name behaviour for newer urpmi.