BP Children hold Child Actors deleted in parent

We have had several cases where a child blueprint retains a deleted Child Actor component reference after removal from the parent.

We have approximately 80 child blueprints of a Blueprint base class that derives from a C++ Base Class. When we remove a ChildActorComponent that is no longer used, one or more (no more than two thus far) children, don’t get the message after saving the change in the parent. It is not the same ones each time so it seems more random. Sometimes, the editor will not reopen because of this, and the project has to be reloaded. Another time, I was able to delete the offending blueprint and recreate it. This has happened with more than one legacy child actor component as we go through and eliminate them.

This is on 4.26.2. Has anyone had this problem, and if so, what did they do to ensure they could get back into the editor after closing it.

TIA

I found an involved solution to this. The uasset files contained the reference to the TargetPoint. I found this by using “grep TPTar *” in the content directory with all the child blueprints (on windows there must be an equivalent). That gave me a list of corrupted children. It was 30 out of about 80. The TPTar is just a piece of the name that the original component was called.

I was able to start the editor with the uproject file (not with the IDE (XCode in my case). I pulled up each blueprint and simply saved it, or compiled and saved. The editor cleared the bad references out.

The actual problem was most likely caused by the fact that some were originally directly inherited from the C++ class and at one time had their own copies of childactorcomponents and then were reparented to the base blueprint. Looks like something to watch for if you’ve ever done that. The properties were “hidden” after the reparenting and apparently lying in wait to make it look like the blueprint is corrupt. This also had another symptom that is worth mentioning. This problem would cause levels to appear corrupt if the blueprint was placed in the level. It could be that a lot of reported errors of corruptions might be caused by something like this.

Hope this helps someone if they run into a supposedly corrupt blueprint.