From cbcfa588c9272428056081efcd1fcd062b5fbc19 Mon Sep 17 00:00:00 2001 From: "pls.153" Date: Thu, 2 Nov 2023 14:17:46 +0100 Subject: [PATCH] fix detection of 'qjs' call --- src/cpp/ecl_ext.cpp | 4 +++- src/cpp/lqml.cpp | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/cpp/ecl_ext.cpp b/src/cpp/ecl_ext.cpp index 912f022..4cbc329 100644 --- a/src/cpp/ecl_ext.cpp +++ b/src/cpp/ecl_ext.cpp @@ -499,7 +499,9 @@ cl_object qinvoke_method2(cl_object l_obj, cl_object l_name, cl_object l_args) { const char* v = "QVariant"; int i = 0; QObject* qobject = toQObjectPointer(l_obj); - const bool qjs_call = (qobject_cast(qobject) != nullptr); + const char* class_name = qobject->metaObject()->className(); + const bool qjs_call = (qstrcmp("QQuick", class_name) < 0) || + (qstrcmp("QQml", class_name) < 0); for (cl_object l_do_list = l_args; l_do_list != ECL_NIL; l_do_list = cl_cdr(l_do_list), i++) { cl_object l_el = cl_car(l_do_list); if (qjs_call) { diff --git a/src/cpp/lqml.cpp b/src/cpp/lqml.cpp index 33d258e..480d780 100644 --- a/src/cpp/lqml.cpp +++ b/src/cpp/lqml.cpp @@ -7,7 +7,7 @@ #include #include -const char LQML::version[] = "23.10.4"; // October 2023 +const char LQML::version[] = "23.11.1"; // November 2023 extern "C" void ini_LQML(cl_object);