"referenced entity .* not found" message fixed to be fatal
authorshort <>
Tue, 10 Jul 2001 14:46:31 +0000 (14:46 +0000)
committershort <>
Tue, 10 Jul 2001 14:46:31 +0000 (14:46 +0000)
 - expr_sink_internal() & enlist_entity_connect() fixed to pass-thru failure
 - bugreport by courtesy of Pavel Ruzicka <pavel.ruzicka@gtsgroup.cz>

cfgeval.c
cfgfile.c

index 5435709..1343a9a 100644 (file)
--- a/cfgeval.c
+++ b/cfgeval.c
@@ -379,12 +379,14 @@ struct expr *parent;
        switch (expr->type) {
 
        case S_not:
-           expr_sink_internal(expr->u.not.child, membership, expr /* parent */);
+           if (expr_sink_internal(expr->u.not.child, membership, expr /* parent */))
+               return (1);
            break;
 
        case S_and:
        case S_or:
-           expr_sink_internal(expr->u.and_or.child_first, membership, expr /* parent */);
+           if (expr_sink_internal(expr->u.and_or.child_first, membership, expr /* parent */))
+               return (1);
            break;
 
        case S_user:
index 7c2353a..358e962 100644 (file)
--- a/cfgfile.c
+++ b/cfgfile.c
@@ -1091,7 +1091,8 @@ enlist_entity_connect()
            item->child = NULL;         /* don't free string ref'ed from 'child_entity'! */
        }
 
-       enlist_entity_direct(parent_entity, child_entity, item->when);
+       if (!enlist_entity_direct(parent_entity, child_entity, item->when))
+           return (1);         /* entities not found */
 
        enlist_entity_list = item->next;
        item->when = NULL;