Fix dupe uuid check on entity add (#6735)

This commit is contained in:
Jake Potrebic 2021-10-31 15:09:39 -07:00
parent e0cac960b1
commit 8cd49fef6b

View File

@ -173,9 +173,10 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
private boolean addEntityUuid(T entity) {
if (!this.knownUuids.add(entity.getUUID())) {
+ // Paper start
+ if (((Entity) entity).isRemoved()) {
+ stopTracking(entity); // remove the existing entity
+ return false;
+ T conflict = this.visibleEntityStorage.getEntity(entity.getUUID());
+ if (conflict != null && ((Entity) conflict).isRemoved()) {
+ stopTracking(conflict); // remove the existing entity
+ return true;
+ }
+ // Paper end
PersistentEntitySectionManager.LOGGER.warn("UUID of added entity already exists: {}", entity);