From e76c7699ff685ed75258c00221234a02be6833a2 Mon Sep 17 00:00:00 2001 From: Sotr Date: Wed, 27 Mar 2019 15:17:33 +0800 Subject: [PATCH] Upstream Paper --- src/main/java/co/aikar/timings/MinecraftTimings.java | 2 +- .../java/org/bukkit/craftbukkit/scheduler/CraftTask.java | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java index 66d02e048..7a2a27cdb 100644 --- a/src/main/java/co/aikar/timings/MinecraftTimings.java +++ b/src/main/java/co/aikar/timings/MinecraftTimings.java @@ -51,7 +51,7 @@ public final class MinecraftTimings { */ public static Timing getPluginTaskTimings(BukkitTask bukkitTask, long period) { if (!bukkitTask.isSync()) { - return null; + return NullTimingHandler.NULL; } Plugin plugin; diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java index f32e66010..0d9a46680 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java @@ -1,6 +1,8 @@ package org.bukkit.craftbukkit.scheduler; import java.util.function.Consumer; + +import co.aikar.timings.NullTimingHandler; import org.bukkit.Bukkit; import co.aikar.timings.MinecraftTimings; // Paper import co.aikar.timings.Timing; // Paper @@ -57,7 +59,7 @@ public class CraftTask implements BukkitTask, Runnable { // Spigot } this.id = id; this.period = period; - timings = task != null ? MinecraftTimings.getPluginTaskTimings(this, period) : null; // Paper + timings = task != null ? MinecraftTimings.getPluginTaskTimings(this, period) : NullTimingHandler.NULL; // Paper } @Override @@ -77,13 +79,13 @@ public class CraftTask implements BukkitTask, Runnable { // Spigot @Override public void run() { - if (timings != null && isSync()) timings.startTiming(); // Paper + try (Timing ignored = timings.startTiming()) { // Paper if (rTask != null) { rTask.run(); } else { cTask.accept(this); } - if (timings != null && isSync()) timings.stopTiming(); // Paper + } // Paper } long getPeriod() {