Radish alpha
H
HardenedBSD Package Manager
Radicle
Git (anonymous pull)
Log in to clone via SSH
Fix potential use after free introduced while fixing memory leaks
Baptiste Daroussin committed 10 years ago
commit 71e721dac371b0306ad6e752398fd4c30b4e3c3f
parent 885a201947174bb61c1d0ab52989418acf0aba34
1 file changed +2 -2
modified libpkg/pkg.c
@@ -744,7 +744,7 @@ pkg_addfile_attr(struct pkg *pkg, const char *path, const char *sum,
	if (fflags != 0)
		f->fflags = fflags;

-
	kh_add(pkg_files, pkg->filehash, f, f->path, pkg_file_free);
+
	kh_safe_add(pkg_files, pkg->filehash, f, f->path);
	DL_APPEND(pkg->files, f);

	return (EPKG_OK);
@@ -847,7 +847,7 @@ pkg_adddir_attr(struct pkg *pkg, const char *path, const char *uname,
	if (fflags != 0)
		d->fflags = fflags;

-
	kh_add(pkg_dirs, pkg->dirhash, d, d->path, pkg_dir_free);
+
	kh_safe_add(pkg_dirs, pkg->dirhash, d, d->path);
	DL_APPEND(pkg->dirs, d);

	return (EPKG_OK);