aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/languageclient/lualanguageclient
diff options
context:
space:
mode:
authorArtur Twardy <[email protected]>2024-11-04 17:51:11 +0100
committerArtur Twardy <[email protected]>2024-11-05 07:18:12 +0000
commit0c6a49a19c8641d9b06da3553fada0c9a1d4f4c8 (patch)
tree403a4a644dc47ba87be098edced7f3410da9ccdb /src/plugins/languageclient/lualanguageclient
parent94aac9f4468a15da59f7d3187c91923fd3c6bcf8 (diff)
Lua: Fix for client crash on callback call
Change-Id: Idd2ca77b050aa22c3c34d1fef45fac8e960c4401 Reviewed-by: Marcus Tillmanns <[email protected]>
Diffstat (limited to 'src/plugins/languageclient/lualanguageclient')
-rw-r--r--src/plugins/languageclient/lualanguageclient/lualanguageclient.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/plugins/languageclient/lualanguageclient/lualanguageclient.cpp b/src/plugins/languageclient/lualanguageclient/lualanguageclient.cpp
index ebc1e522fad..ecfa6f4c4e7 100644
--- a/src/plugins/languageclient/lualanguageclient/lualanguageclient.cpp
+++ b/src/plugins/languageclient/lualanguageclient/lualanguageclient.cpp
@@ -34,7 +34,7 @@ namespace {
class RequestWithResponse : public LanguageServerProtocol::JsonRpcMessage
{
- sol::function m_callback;
+ sol::main_function m_callback;
LanguageServerProtocol::MessageId m_id;
public:
@@ -210,7 +210,7 @@ public:
TransportType m_transportType{TransportType::StdIO};
std::function<expected_str<void>(CommandLine &)> m_cmdLineCallback;
std::function<expected_str<void>(QString &)> m_initOptionsCallback;
- sol::function m_asyncInitOptions;
+ sol::main_function m_asyncInitOptions;
bool m_isUpdatingAsyncOptions{false};
AspectContainer *m_aspects{nullptr};
QString m_name;
@@ -330,7 +330,7 @@ public:
this,
&LuaClientWrapper::onClientRemoved);
- if (auto asyncInit = options.get<sol::optional<sol::function>>(
+ if (auto asyncInit = options.get<sol::optional<sol::main_function>>(
"initializationOptionsAsync")) {
m_asyncInitOptions = *asyncInit;
QMetaObject::invokeMethod(
@@ -379,7 +379,7 @@ public:
return {};
}
- void registerMessageCallback(const QString &msg, const sol::function &callback)
+ void registerMessageCallback(const QString &msg, const sol::main_function &callback)
{
m_messageCallbacks.insert(msg, callback);
updateMessageCallbacks();
@@ -454,7 +454,7 @@ public:
}
void sendMessageWithIdForDocument_cb(
- TextEditor::TextDocument *document, const sol::table &message, const sol::function callback)
+ TextEditor::TextDocument *document, const sol::table &message, const sol::main_function callback)
{
const QJsonValue messageValue = ::Lua::toJson(message);
if (!messageValue.isObject())
@@ -691,7 +691,7 @@ static void registerLuaApi()
return sol::lua_nil;
return c->m_onInstanceStart.value();
},
- [](LuaClientWrapper *c, const sol::function &f) { c->m_onInstanceStart = f; }),
+ [](LuaClientWrapper *c, const sol::main_function &f) { c->m_onInstanceStart = f; }),
"registerMessage",
&LuaClientWrapper::registerMessageCallback,
"sendMessage",