Ensure that TimedEventExecutor timings are closed (Fixes #1918)

pre this, any event handler firing an exception would leave the timings
open, causing the timings stack to be corrupted
This commit is contained in:
Shane Freeder 2019-03-26 00:55:29 +00:00
parent e8bbfbfddf
commit 364a53e37a

View File

@ -1,4 +1,4 @@
From 24d273e696fc58bf34246300ee6199f5dbb1f7ba Mon Sep 17 00:00:00 2001
From f7754e7d136f3f3a688bc358e4e53cba5f1d44fb Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 29 Feb 2016 18:48:17 -0600
Subject: [PATCH] Timings v2
@ -169,7 +169,7 @@ index 000000000..8e0cd40e8
+}
diff --git a/src/main/java/co/aikar/timings/TimedEventExecutor.java b/src/main/java/co/aikar/timings/TimedEventExecutor.java
new file mode 100644
index 000000000..68f7866e1
index 000000000..933ecf9bd
--- /dev/null
+++ b/src/main/java/co/aikar/timings/TimedEventExecutor.java
@@ -0,0 +1,83 @@
@ -251,9 +251,9 @@ index 000000000..68f7866e1
+ executor.execute(listener, event);
+ return;
+ }
+ timings.startTiming();
+ executor.execute(listener, event);
+ timings.stopTiming();
+ try (Timing ignored = timings.startTiming()){
+ executor.execute(listener, event);
+ }
+ }
+}
diff --git a/src/main/java/co/aikar/timings/Timing.java b/src/main/java/co/aikar/timings/Timing.java