]> git.deb.at Git - deb/packages.git/blobdiff - bin/extract_files
Initial Polish translation of sections file.
[deb/packages.git] / bin / extract_files
index 49b489f24d1b8153bc9d56462fe7650225f30e8e..a94fba06bd87d5a3161fdde213935392cb6d086f 100755 (executable)
@@ -234,8 +234,8 @@ sub to_update {
 
     if ($config_data->{structure} == PKGPOOL) {
        my $dir = "$target/".pkg_pool_directory( $pkg_data );
-       if (!$force && -d $dir && -f "$dir/log") {
-           touch("$dir/log")
+       if (!$force && -f "$dir/log") {
+           (utime(undef,undef,"$dir/log") == 1)
                or do_warning( "touch of $dir/log failed" );
            return 0;
        } else {
@@ -564,6 +564,10 @@ sub read_deb {
        }
     }
     $cache{$debname} ||= qx/dpkg-deb --info "$debname" control/;
+    unless ( $cache{$debname} ) {
+       do_warning( "extracting control information of file $debname failed" );
+       return;
+    }
     my $control = $cache{$debname};
 
     unless ( $raw_data = $parser->parse_mem( $control,
@@ -607,7 +611,7 @@ sub collect_deb {
     return unless $pkg_data;
 
     if (exists $bin_packages{$pkg_data->{bin_name}}{$pkg_data->{bin_version}}{$pkg_data->{bin_arch}}) {
-       do_warning( "duplicated package $pkg_data->{bin_name}, version {$pkg_data->{bin_version}{$pkg_data->{bin_arch}}" );
+       do_warning( "duplicated package $pkg_data->{bin_name}, version $pkg_data->{bin_version}, arch $pkg_data->{bin_arch}" );
        return;
     } else {
        $bin_packages{$pkg_data->{bin_name}}{$pkg_data->{bin_version}}{$pkg_data->{bin_arch}} = $pkg_data;