index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
author | Chantry Xavier <shiningxc@gmail.com> | 2007-06-28 19:28:34 +0200 |
---|---|---|
committer | Chantry Xavier <shiningxc@gmail.com> | 2007-06-28 19:29:38 +0200 |
commit | 2657a2bfb7847c8ac4dd5875979400d0d3fd89f6 (patch) | |
tree | f92d12b4f9fa2353d0af4bba99badbb6af58bdfe /lib | |
parent | 1a3b3bc1300b42dc2f554a6faa09b5ece2d3321c (diff) |
-rw-r--r-- | lib/libalpm/add.c | 17 |
diff --git a/lib/libalpm/add.c b/lib/libalpm/add.c index b6a54b7f..1ebf455a 100644 --- a/lib/libalpm/add.c +++ b/lib/libalpm/add.c @@ -544,11 +544,12 @@ int _alpm_add_commit(pmtrans_t *trans, pmdb_t *db) archive_entry_set_pathname(entry, tempfile); - if(archive_read_extract(archive, entry, archive_flags) != ARCHIVE_OK) { + int ret = archive_read_extract(archive, entry, archive_flags); + if(ret != ARCHIVE_OK && ret != ARCHIVE_WARN) { _alpm_log(PM_LOG_ERROR, _("could not extract %s (%s)"), - entryname, strerror(errno)); + entryname, archive_error_string(archive)); alpm_logaction(_("could not extract %s (%s)"), - entryname, strerror(errno)); + entryname, archive_error_string(archive)); errors++; unlink(tempfile); FREE(hash_orig); @@ -699,10 +700,14 @@ int _alpm_add_commit(pmtrans_t *trans, pmdb_t *db) archive_entry_set_pathname(entry, filename); - if(archive_read_extract(archive, entry, archive_flags) != ARCHIVE_OK) { - _alpm_log(PM_LOG_ERROR, _("could not extract %s (%s)"), filename, strerror(errno)); - alpm_logaction(_("error: could not extract %s (%s)"), filename, strerror(errno)); + int ret = archive_read_extract(archive, entry, archive_flags); + if(ret != ARCHIVE_OK && ret != ARCHIVE_WARN) { + _alpm_log(PM_LOG_ERROR, _("could not extract %s (%s)"), + entryname, archive_error_string(archive)); + alpm_logaction(_("could not extract %s (%s)"), + entryname, archive_error_string(archive)); errors++; + continue; } /* calculate an hash if this is in newpkg's backup */ |