fix low-level bug in 'qml_get2', 'qjs_call2'

This commit is contained in:
polos 2021-03-13 21:42:59 +01:00
parent 089ba6521d
commit 49261f5031

View file

@ -3043,7 +3043,11 @@ cl_object qjs_call(cl_object l_item, cl_object l_name, cl_object l_args) {
QGenericReturnArgument genR(v, &ret);
QMetaObject::invokeMethod((QObject*)o.pointer, name, genR,
genA[0], genA[1], genA[2], genA[3], genA[4], genA[5], genA[6], genA[7], genA[8], genA[9]);
return from_qvariant_value(ret); }
bool return_value_p = EQL::return_value_p;
EQL::return_value_p = true;
cl_object l_ret = from_qvariant_value(ret);
EQL::return_value_p = return_value_p;
return l_ret; }
error_msg("QJS-CALL", LIST3(l_item, l_name, l_args));
return ECL_NIL; }
@ -3058,7 +3062,10 @@ cl_object qml_get2(cl_object l_item, cl_object l_name) {
QObject* qobject = (QObject*)o.pointer;
QQmlProperty property(qobject, name);
if(property.isValid()) {
bool return_value_p = EQL::return_value_p;
EQL::return_value_p = true;
cl_object l_val = from_qvariant_value(property.read());
EQL::return_value_p = return_value_p;
ecl_return2(ecl_process_env(), l_val, ECL_T); }}
error_msg("QML-GET", LIST2(l_item, l_name));
ecl_return1(ecl_process_env(), ECL_NIL); }