diff --git a/src/libimcv/imv/imv_policy_manager.c b/src/libimcv/imv/imv_policy_manager.c index 12fa7d243..34d177de2 100644 --- a/src/libimcv/imv/imv_policy_manager.c +++ b/src/libimcv/imv/imv_policy_manager.c @@ -143,7 +143,8 @@ bool policy_stop(database_t *db, int session_id) e = db->query(db, "SELECT w.rec_final, w.result, e.policy FROM workitems AS w " - "JOIN enforcements AS e ON w.enforcement = e.id WHERE w.session = ?", + "JOIN enforcements AS e ON w.enforcement = e.id " + "WHERE w.session = ? AND w.result IS NOT NULL", DB_INT, session_id, DB_INT, DB_TEXT, DB_INT); if (e) { diff --git a/src/libimcv/imv/tables.sql b/src/libimcv/imv/tables.sql index c65de682f..823a72d3a 100644 --- a/src/libimcv/imv/tables.sql +++ b/src/libimcv/imv/tables.sql @@ -110,7 +110,7 @@ CREATE TABLE workitems ( argument text NOT NULL, rec_fail integer NOT NULL, rec_noresult integer NOT NULL, - rec_final integer DEFAULT 3, + rec_final integer, result text ); DROP INDEX IF EXISTS workitems_session;