Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Fix segfault during pkg repo
Baptiste Daroussin committed 14 years ago
commit c1342d535ae59a884a6d65302d2c8c756b6d3894
parent 762a318
1 file changed +6 -1
modified libpkg/pkg_create_repo.c
@@ -90,8 +90,11 @@ pkg_create_repo(char *path, void (progress)(struct pkg *pkg, void *data), void *
			return EPKG_FATAL;
		}

-
	if (sqlite3_open(repodb, &sqlite) != SQLITE_OK)
+
	sqlite3_initialize();
+
	if (sqlite3_open(repodb, &sqlite) != SQLITE_OK) {
+
		sqlite3_shutdown();
		return (EPKG_FATAL);
+
	}

	if (sqlite3_exec(sqlite, initsql, NULL, NULL, &errmsg) != SQLITE_OK) {
		EMIT_PKG_ERROR("sqlite: %s", errmsg);
@@ -218,6 +221,8 @@ pkg_create_repo(char *path, void (progress)(struct pkg *pkg, void *data), void *
	if (errmsg != NULL)
		sqlite3_free(errmsg);

+
	sqlite3_shutdown();
+

	return (retcode);
}