From a8b3a7cbf0d288e361e99e8709f2a0fe1c173750 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Fri, 24 Feb 2023 07:11:39 -0500 Subject: [PATCH] Null protection for autofields --- IDEHelper/Compiler/BfAutoComplete.cpp | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/IDEHelper/Compiler/BfAutoComplete.cpp b/IDEHelper/Compiler/BfAutoComplete.cpp index 964d9c35..c72831f1 100644 --- a/IDEHelper/Compiler/BfAutoComplete.cpp +++ b/IDEHelper/Compiler/BfAutoComplete.cpp @@ -1632,11 +1632,15 @@ void BfAutoComplete::CheckIdentifier(BfAstNode* identifierNode, bool isInExpress { if (auto entryAdded = AddEntry(AutoCompleteEntry("property", prop->mName + "="), filter)) { - if (CheckDocumentation(entryAdded, prop->GetFieldDeclaration()->mDocumentation)) + auto propertyDeclaration = prop->GetFieldDeclaration(); + if (propertyDeclaration != NULL) { + if (CheckDocumentation(entryAdded, propertyDeclaration->mDocumentation)) + { + } + if (mIsGetDefinition) + SetDefinitionLocation(propertyDeclaration->mNameNode); } - if (mIsGetDefinition) - SetDefinitionLocation(prop->GetFieldDeclaration()->mNameNode); } } @@ -1644,11 +1648,15 @@ void BfAutoComplete::CheckIdentifier(BfAstNode* identifierNode, bool isInExpress { if (auto entryAdded = AddEntry(AutoCompleteEntry("field", field->mName + "="), filter)) { - if (CheckDocumentation(entryAdded, field->GetFieldDeclaration()->mDocumentation)) + auto fieldDeclaration = field->GetFieldDeclaration(); + if (fieldDeclaration != NULL) { + if (CheckDocumentation(entryAdded, fieldDeclaration->mDocumentation)) + { + } + if (mIsGetDefinition) + SetDefinitionLocation(fieldDeclaration->mNameNode); } - if (mIsGetDefinition) - SetDefinitionLocation(field->GetFieldDeclaration()->mNameNode); } } }