diff --git a/modules/gdscript/language_server/gdscript_text_document.cpp b/modules/gdscript/language_server/gdscript_text_document.cpp index 72170777ee4..316377e1673 100644 --- a/modules/gdscript/language_server/gdscript_text_document.cpp +++ b/modules/gdscript/language_server/gdscript_text_document.cpp @@ -64,6 +64,9 @@ void GDScriptTextDocument::_bind_methods() { void GDScriptTextDocument::didOpen(const Variant &p_param) { lsp::TextDocumentItem doc = load_document_item(p_param); + if (!is_valid_gd_file(doc)) { + return; + } sync_script_content(doc.uri, doc.text); } @@ -74,6 +77,10 @@ void GDScriptTextDocument::didClose(const Variant &p_param) { void GDScriptTextDocument::didChange(const Variant &p_param) { lsp::TextDocumentItem doc = load_document_item(p_param); + if (!is_valid_gd_file(doc)) { + return; + } + Dictionary dict = p_param; Array contentChanges = dict["contentChanges"]; for (int i = 0; i < contentChanges.size(); ++i) { @@ -86,6 +93,9 @@ void GDScriptTextDocument::didChange(const Variant &p_param) { void GDScriptTextDocument::willSaveWaitUntil(const Variant &p_param) { lsp::TextDocumentItem doc = load_document_item(p_param); + if (!is_valid_gd_file(doc)) { + return; + } String path = GDScriptLanguageProtocol::get_singleton()->get_workspace()->get_file_path(doc.uri); Ref