X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=BaseTools%2FSource%2FC%2FVfrCompile%2FVfrUtilityLib.cpp;h=0fe14b0d29215213c48ee38b27e9a0c3efa40130;hp=b00a926adeb549f465bcf83544dc39fefb50c222;hb=631ffb70ebbe78b6e3f342b7ad9ab9b75f8796ae;hpb=2f57de0ae12731fbf3a0cdd4dc1c981e94dc5816 diff --git a/BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp b/BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp index b00a926ade..0fe14b0d29 100644 --- a/BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp +++ b/BaseTools/Source/C/VfrCompile/VfrUtilityLib.cpp @@ -615,9 +615,13 @@ CVfrVarDataTypeDB::DataTypeHasBitField ( SVfrDataField *pTmp; GetDataType (TypeName, &pType); + + if (pType == NULL){ + return FALSE; + } for (pTmp = pType->mMembers; pTmp!= NULL; pTmp = pTmp->mNext) { if (pTmp->mIsBitField) { - return TRUE; + return TRUE; } } return FALSE; @@ -648,7 +652,7 @@ CVfrVarDataTypeDB::IsThisBitField ( CHECK_ERROR_RETURN(GetTypeField (FName, pType, pField), VFR_RETURN_SUCCESS); pType = pField->mFieldType; } - if (pField->mIsBitField) { + if (pField != NULL && pField->mIsBitField) { return TRUE; } else { return FALSE;