diff --git a/Nasal/props.nas b/Nasal/props.nas
index 729f35254..a951c8418 100644
--- a/Nasal/props.nas
+++ b/Nasal/props.nas
@@ -186,9 +186,11 @@ var setAll = func {
 
 ##
 # Evaluates a <condition> property branch according to the rules
-# set out in $FG_ROOT/Docs/README.condition.
+# set out in $FG_ROOT/Docs/README.condition. Undefined conditions
+# are true.
 #
 var condition = func(p) {
+    if(p == nil) { return 1; }
     if(!isa(p, props.Node)) { p = props.globals.getNode(p); }
     return _cond_and(p)
 }
@@ -251,3 +253,4 @@ var _cond_cmp = func(p, op) {
     return op == "LT" ? left < right : op == "GT" ? left > right : left == right;
 }
 
+