bin/xbps-remove: ignore EBUSY errors
EBUSY occurs if xbps tries to remove a directory with unlink(2) that is a mount point, this happens with `/boot` as example. https: //github.com/voidlinux/void-packages/issues/7229#issuecomment-319392560 https: //github.com/voidlinux/void-packages/issues/8753 Closes: #259 [via git-merge-pr]
This commit is contained in:
parent
c430d8ceb6
commit
3ad6b7a523
@ -108,8 +108,8 @@ state_cb_rm(const struct xbps_state_cb_data *xscd, void *cbdata UNUSED)
|
|||||||
case XBPS_STATE_REMOVE_FILE_FAIL:
|
case XBPS_STATE_REMOVE_FILE_FAIL:
|
||||||
case XBPS_STATE_REMOVE_FILE_HASH_FAIL:
|
case XBPS_STATE_REMOVE_FILE_HASH_FAIL:
|
||||||
case XBPS_STATE_REMOVE_FILE_OBSOLETE_FAIL:
|
case XBPS_STATE_REMOVE_FILE_OBSOLETE_FAIL:
|
||||||
/* Ignore errors due to not empty directories */
|
/* Ignore errors due to not empty directories or directories being a mount point */
|
||||||
if (xscd->err == ENOTEMPTY)
|
if (xscd->err == ENOTEMPTY || xscd->err == EBUSY)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
xbps_error_printf("%s\n", xscd->desc);
|
xbps_error_printf("%s\n", xscd->desc);
|
||||||
|
Loading…
Reference in New Issue
Block a user