diff --git a/src/io/scenarium/logger/Logger.java b/src/io/scenarium/logger/Logger.java index 9ca2666..7386164 100644 --- a/src/io/scenarium/logger/Logger.java +++ b/src/io/scenarium/logger/Logger.java @@ -163,7 +163,22 @@ public class Logger { } private static StackTraceElement getCallerElement() { - return Thread.currentThread().getStackTrace()[5]; + if (Thread.currentThread().getStackTrace().length > 5) { + return Thread.currentThread().getStackTrace()[5]; + } + if (Thread.currentThread().getStackTrace().length > 4) { + return Thread.currentThread().getStackTrace()[4]; + } + if (Thread.currentThread().getStackTrace().length > 3) { + return Thread.currentThread().getStackTrace()[3]; + } + if (Thread.currentThread().getStackTrace().length > 2) { + return Thread.currentThread().getStackTrace()[2]; + } + if (Thread.currentThread().getStackTrace().length > 1) { + return Thread.currentThread().getStackTrace()[1]; + } + return Thread.currentThread().getStackTrace()[0]; } /** This function permit to get the printable string to print in the log element (select here the number of char to print)