projects
/
m6w6
/
ext-psi
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
|
github
raw
|
inline
| side by side
flush
[m6w6/ext-psi]
/
src
/
engine.c
diff --git
a/src/engine.c
b/src/engine.c
index dc9d2746f235aff80c90a36a35eaf7319dbf0488..a86cd0b62460e598d782912cb59dd6368fcbd99d 100644
(file)
--- a/
src/engine.c
+++ b/
src/engine.c
@@
-193,6
+193,8
@@
static inline ZEND_RESULT_CODE psi_parse_args(zend_execute_data *execute_data, i
Z_PARAM_PROLOGUE(0);
} else if (PSI_T_MIXED == iarg->type->type) {
Z_PARAM_PROLOGUE(0);
Z_PARAM_PROLOGUE(0);
} else if (PSI_T_MIXED == iarg->type->type) {
Z_PARAM_PROLOGUE(0);
+ } else if (PSI_T_CALLABLE == iarg->type->type) {
+ Z_PARAM_FUNC_EX(iarg->val.zend.cb.fci, iarg->val.zend.cb.fcc, 1, 0);
} else {
error_code = ZPP_ERROR_FAILURE;
break;
} else {
error_code = ZPP_ERROR_FAILURE;
break;
@@
-323,6
+325,11
@@
static inline impl_val *psi_let_val(token_t let_func, impl_arg *iarg, impl_val *
arg_val->ptr = obj->data;
}
break;
arg_val->ptr = obj->data;
}
break;
+ case PSI_T_CBVAL:
+ if (iarg->type->type == PSI_T_CALLABLE) {
+
+ }
+ break;
EMPTY_SWITCH_DEFAULT_CASE();
}
return arg_val;
EMPTY_SWITCH_DEFAULT_CASE();
}
return arg_val;