break;
case XLAT_FUNC_UNRESOLVED:
- if (!type || (type & XLAT_FUNC_UNRESOLVED)) {
- ret = walker(node, uctx);
+ if (xlat_exp_head(node->call.args)) {
+ ret = xlat_eval_walk(node->call.args, walker, type, uctx);
if (ret < 0) return ret;
- if (ret > 0) return 0;
}
- /*
- * Now evaluate the function's arguments
- */
- if (xlat_exp_head(node->call.args)) {
- ret = xlat_eval_walk(node->call.args, walker, type, uctx);
+ if (!type || (type & XLAT_FUNC_UNRESOLVED)) {
+ ret = walker(node, uctx);
if (ret < 0) return ret;
+ if (ret > 0) return 0;
}
break;