Skip to content

Commit d5d058f

Browse files
committed
Fix 'silent' error when logging in. Finalises fix for #2142
1 parent b00e694 commit d5d058f

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

src/main/java/org/spongepowered/common/event/SpongeCommonEventFactory.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,11 +292,19 @@ public static void callDropItemDestruct(final List<Entity> entities, final Phase
292292
}
293293

294294
public static boolean callSpawnEntity(final List<Entity> entities, final PhaseContext<?> context) {
295+
return SpongeCommonEventFactory.callSpawnEntity(entities, context, true);
296+
}
297+
298+
public static boolean callSpawnEntity(final List<Entity> entities, final PhaseContext<?> context, final boolean forPlayer) {
295299
Sponge.getCauseStackManager().getCurrentContext().require(EventContextKeys.SPAWN_TYPE);
296300
try {
297301
final SpawnEntityEvent event = SpongeEventFactory.createSpawnEntityEvent(Sponge.getCauseStackManager().getCurrentCause(), entities);
298302
SpongeImpl.postEvent(event);
299303
if (!event.isCancelled()) {
304+
if (forPlayer) {
305+
// No processing should occur here, we're done as far as this event is concerned.
306+
return true;
307+
}
300308
for (Entity entity : event.getEntities()) {
301309
if (entity instanceof Projectile) {
302310
LaunchProjectileEvent launchProjectileEvent =

src/main/java/org/spongepowered/common/event/tracking/PhaseTracker.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1049,7 +1049,7 @@ public boolean spawnEntity(final WorldServer world, final net.minecraft.entity.E
10491049
world.updateAllPlayersSleepingFlag();
10501050
try (final CauseStackManager.StackFrame frame = Sponge.getCauseStackManager().pushCauseFrame()) {
10511051
frame.addContext(EventContextKeys.SPAWN_TYPE, SpawnTypes.PLACEMENT);
1052-
SpongeCommonEventFactory.callSpawnEntity(Collections.singletonList((Player) entityplayer), context);
1052+
SpongeCommonEventFactory.callSpawnEntity(Collections.singletonList((Player) entityplayer), context, true);
10531053
SpongeImplHooks.firePlayerJoinSpawnEvent((EntityPlayerMP) entityplayer);
10541054
}
10551055
} else {

0 commit comments

Comments
 (0)