libxbps: fixed multiple free(3) calls via closedir(3) in virtualpkg init in error paths.
This commit is contained in:
parent
807045d1d5
commit
94591775d5
3
NEWS
3
NEWS
@ -1,5 +1,8 @@
|
||||
xbps-0.11.0 (???):
|
||||
|
||||
* libxbps: fixed multiple free(3)s (multiple closedir(3) calls)
|
||||
when some virtualpkg plist file couldn't be internalized.
|
||||
|
||||
* xbps-bin(8): 'remove' with recursive flag (-R) now removes first
|
||||
the specified packages and puts its automatic dependencies at the
|
||||
tail of the array.
|
||||
|
@ -82,7 +82,6 @@ xbps_init_virtual_pkgs(struct xbps_handle *xh)
|
||||
vpkgfile = xbps_xasprintf("%s/%s",
|
||||
prop_string_cstring_nocopy(vpkgdir), dp->d_name);
|
||||
if (vpkgfile == NULL) {
|
||||
(void)closedir(dirp);
|
||||
xbps_dbg_printf("%s: failed to alloc mem for %s\n",
|
||||
__func__, dp->d_name);
|
||||
continue;
|
||||
@ -93,7 +92,6 @@ xbps_init_virtual_pkgs(struct xbps_handle *xh)
|
||||
if (vpkgd == NULL) {
|
||||
xbps_dbg_printf("%s: failed to internalize %s: %s\n",
|
||||
__func__, dp->d_name, strerror(errno));
|
||||
(void)closedir(dirp);
|
||||
continue;
|
||||
}
|
||||
if (prop_object_type(xh->virtualpkgs_array) == PROP_TYPE_UNKNOWN)
|
||||
@ -103,7 +101,6 @@ xbps_init_virtual_pkgs(struct xbps_handle *xh)
|
||||
xbps_dbg_printf("%s: failed to add %s virtualpkg "
|
||||
"dictionary!\n", __func__, dp->d_name);
|
||||
prop_object_release(vpkgd);
|
||||
(void)closedir(dirp);
|
||||
continue;
|
||||
}
|
||||
xbps_dbg_printf("%s: added virtualpkg from: %s\n",
|
||||
|
Loading…
Reference in New Issue
Block a user