diff --git a/src/IGESData/IGESData_IGESReaderTool.cxx b/src/IGESData/IGESData_IGESReaderTool.cxx index 23d91152c5..6e6e9989aa 100644 --- a/src/IGESData/IGESData_IGESReaderTool.cxx +++ b/src/IGESData/IGESData_IGESReaderTool.cxx @@ -290,13 +290,15 @@ IGESData_IGESReaderTool::IGESData_IGESReaderTool if (v[14] < 0) { fieldent = GetCasted(IGESData_IGESEntity,IR->BoundEntity( (1-v[14])/2 )); Color = GetCasted(IGESData_ColorEntity, fieldent); + //an entity that is not a color entity and has a number corresponding + //to the color field should not be considered erroneous if (Color.IsNull()) { // Sending of message : Incorrect Color Number Message_Msg Msg34 ("XSTEP_34"); Msg34.Arg(thecnum); Msg34.Arg(thectyp.Type()); ach->SendWarning(Msg34); - ent->InitDirFieldEntity(13,fieldent); + ent->InitDirFieldEntity(13, Color); } else ent->InitColor(Color); }