xbps_remove_pkg: do not error out if files.plist not found, just continue.
This commit is contained in:
parent
30932b3c55
commit
9acec7883b
4
NEWS
4
NEWS
@ -1,5 +1,9 @@
|
||||
xbps-0.16 (???):
|
||||
|
||||
* libxbps: when removing package files and if metadata files.plist wasn't
|
||||
found, do not error out and rather just continue until the package is
|
||||
fully removed.
|
||||
|
||||
* xbps-bin(8): renamed "autoupdate" target to "dist-upgrade" and
|
||||
"autoremove" to "remove-orphans". For compatibility with previous
|
||||
versions the old targets are still kept, but will be removed in future
|
||||
|
@ -56,7 +56,7 @@
|
||||
*/
|
||||
#define XBPS_PKGINDEX_VERSION "1.4"
|
||||
|
||||
#define XBPS_API_VERSION "20120508"
|
||||
#define XBPS_API_VERSION "20120521"
|
||||
#define XBPS_VERSION "0.16"
|
||||
|
||||
/**
|
||||
|
@ -328,38 +328,31 @@ xbps_remove_pkg(const char *pkgname, const char *version, bool update)
|
||||
}
|
||||
|
||||
pkgd = xbps_dictionary_from_metadata_plist(pkgname, XBPS_PKGFILES);
|
||||
if (pkgd == NULL) {
|
||||
rv = errno;
|
||||
goto out;
|
||||
}
|
||||
if (pkgd) {
|
||||
/* Remove links */
|
||||
if ((rv = xbps_remove_pkg_files(pkgd, "links", pkgver)) != 0)
|
||||
goto out;
|
||||
|
||||
/* Remove regular files */
|
||||
if ((rv = xbps_remove_pkg_files(pkgd, "files", pkgver)) != 0)
|
||||
goto out;
|
||||
|
||||
/* Remove configuration files */
|
||||
if ((rv = xbps_remove_pkg_files(pkgd, "conf_files", pkgver)) != 0)
|
||||
goto out;
|
||||
|
||||
/* Remove dirs */
|
||||
if ((rv = xbps_remove_pkg_files(pkgd, "dirs", pkgver)) != 0)
|
||||
goto out;
|
||||
|
||||
}
|
||||
/*
|
||||
* Execute the post REMOVE action if file exists and we aren't
|
||||
* updating the package.
|
||||
*/
|
||||
if (rmfile_exists &&
|
||||
(xbps_file_exec(buf, "post", pkgname, version, "no",
|
||||
xhp->conffile, NULL) != 0)) {
|
||||
((rv = xbps_file_exec(buf, "post", pkgname, version, "no",
|
||||
xhp->conffile, NULL)) != 0)) {
|
||||
xbps_set_cb_state(XBPS_STATE_REMOVE_FAIL,
|
||||
errno, pkgname, version,
|
||||
rv, pkgname, version,
|
||||
"%s: [remove] REMOVE script failed to execute "
|
||||
"post ACTION: %s", pkgver, strerror(errno));
|
||||
rv = errno;
|
||||
"post ACTION: %s", pkgver, strerror(rv));
|
||||
goto out;
|
||||
}
|
||||
/*
|
||||
@ -390,13 +383,12 @@ purge:
|
||||
* Execute the purge REMOVE action if file exists.
|
||||
*/
|
||||
if (access(buf, X_OK) == 0) {
|
||||
if (xbps_file_exec(buf, "purge", pkgname, version, "no",
|
||||
xhp->conffile, NULL) != 0) {
|
||||
rv = errno;
|
||||
if ((rv = xbps_file_exec(buf, "purge", pkgname, version, "no",
|
||||
xhp->conffile, NULL)) != 0) {
|
||||
xbps_set_cb_state(XBPS_STATE_REMOVE_FAIL,
|
||||
errno, pkgname, version,
|
||||
rv, pkgname, version,
|
||||
"%s: REMOVE script failed to execute "
|
||||
"purge ACTION: %s", pkgver, strerror(errno));
|
||||
"purge ACTION: %s", pkgver, strerror(rv));
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user