[Midnightbsd-cvs] src [7662] trunk/lib/libmport/bundle_read_install_pkg.c: mark package clean/installed only after post install steps now.
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sat Aug 6 15:27:02 EDT 2016
Revision: 7662
http://svnweb.midnightbsd.org/src/?rev=7662
Author: laffer1
Date: 2016-08-06 15:27:02 -0400 (Sat, 06 Aug 2016)
Log Message:
-----------
mark package clean/installed only after post install steps now.
Modified Paths:
--------------
trunk/lib/libmport/bundle_read_install_pkg.c
Modified: trunk/lib/libmport/bundle_read_install_pkg.c
===================================================================
--- trunk/lib/libmport/bundle_read_install_pkg.c 2016-08-06 19:10:35 UTC (rev 7661)
+++ trunk/lib/libmport/bundle_read_install_pkg.c 2016-08-06 19:27:02 UTC (rev 7662)
@@ -54,6 +54,7 @@
static int create_categories(mportInstance *mport, mportPackageMeta *pkg);
static int create_depends(mportInstance *mport, mportPackageMeta *pkg);
static int create_sample_file(char *file);
+static int mark_complete(mportInstance *, mportPackageMeta *);
/**
* This is a wrapper for all bund read install operations
@@ -574,11 +575,6 @@
sqlite3_finalize(assets);
sqlite3_finalize(insert);
- if (mport_db_do(db, "UPDATE packages SET status='clean' WHERE pkg=%Q", pkg->name) != MPORT_OK) {
- SET_ERROR(MPORT_ERR_FATAL, "Unable to mark package clean");
- goto ERROR;
- }
- mport_pkgmeta_logevent(mport, pkg, "Installed");
(mport->progress_free_cb)();
(void) mport_chdir(NULL, orig_cwd);
@@ -606,6 +602,19 @@
}
static int
+mark_complete(mportInstance *mport, mportPackageMeta *pkg)
+{
+ if (mport_db_do(mport->db, "UPDATE packages SET status='clean' WHERE pkg=%Q", pkg->name) != MPORT_OK) {
+ SET_ERROR(MPORT_ERR_FATAL, "Unable to mark package clean");
+ RETURN_CURRENT_ERROR;
+ }
+ mport_pkgmeta_logevent(mport, pkg, "Installed");
+
+ return MPORT_OK;
+}
+
+
+static int
do_post_install(mportInstance *mport, mportBundleRead *bundle, mportPackageMeta *pkg)
{
char to[FILENAME_MAX], from[FILENAME_MAX];
@@ -621,7 +630,10 @@
if (display_pkg_msg(mport, bundle, pkg) != MPORT_OK)
RETURN_CURRENT_ERROR;
- return run_pkg_install(mport, bundle, pkg, "POST-INSTALL");
+ if (run_pkg_install(mport, bundle, pkg, "POST-INSTALL") != MPORT_OK)
+ RETURN_CURRENT_ERROR;
+
+ return mark_complete(mport, pkg);
}
static int
More information about the Midnightbsd-cvs
mailing list