diff --git a/server/lib/engine/extend.js b/server/lib/engine/extend.js index d051ff6..f7262f1 100644 --- a/server/lib/engine/extend.js +++ b/server/lib/engine/extend.js @@ -145,7 +145,7 @@ function parseJsonObject(node, name) { function parseTableJsonObject(node, name) { let table = new LuaTable(); - table._fields = parseJsonObject(node.fields); + table._fields = parseJsonObject(node.fields) || []; table._metatable = parseJsonObject(node.metatable, '__mt'); table.description = node.description; table.link = node.link; diff --git a/server/providers/format-provider.js b/server/providers/format-provider.js index 59615b3..8fadcea 100644 --- a/server/providers/format-provider.js +++ b/server/providers/format-provider.js @@ -38,9 +38,12 @@ class FormatProvider { text = text.substring(document.offsetAt(range.start), document.offsetAt(range.end)); } - let formattedText = fmt.formatText(text, this._formatOptions(opt)); - - return [langserver.TextEdit.replace(range, formattedText)]; + try { + let formattedText = fmt.formatText(text, this._formatOptions(opt)); + return [langserver.TextEdit.replace(range, formattedText)]; + } catch (err) { + return []; + } }); }