Hi,
We encountered this issue on FNetGUIDCache::NetGUIDLookup. This leads to problems down the line because the returned FNetworkGUID is already reassigned to another valid object in our version of the engine (we did not modify map and pointers).
If we understood the issue correctly, FWeakObjectPtr::operator== returns true when both pointers are invalid. Even if the pointers were not actually pointing to the same object when they were valid.
When we define the map, is it possible to use another equal operator (or change operator==) that would, for instance, compare the FWeakObjectPtr::ObjectIndex and FWeakObjectPtr::ObjectSerialNumber?
Our current workaround is to make a special case for invalid pointers before calling Find().
Thank you for your help.
Best regards.
Damien