[FIR] Fix NPE in light tree source utils

This commit is contained in:
Dmitriy Novozhilov
2020-12-15 12:58:34 +03:00
parent b048296dca
commit 7e9deb7602
@@ -45,10 +45,10 @@ private val DOC_AND_COMMENT_TOKENS = setOf(
private fun hasSyntaxErrors(node: LighterASTNode, tree: FlyweightCapableTreeStructure<LighterASTNode>): Boolean {
if (node.tokenType == TokenType.ERROR_ELEMENT) return true
val childrenRef = Ref<Array<LighterASTNode>>()
val childrenRef = Ref<Array<LighterASTNode?>?>()
tree.getChildren(node, childrenRef)
val children = childrenRef.get()
return children.lastOrNull {
val children = childrenRef.get() ?: return false
return children.filterNotNull().lastOrNull {
val tokenType = it.tokenType
tokenType !is KtSingleValueToken && tokenType !in DOC_AND_COMMENT_TOKENS
}?.let { hasSyntaxErrors(it, tree) } == true