Commit 36ff51e41a08b9fa356e5949f31830881b09ceeb
1 parent
68f130d2
+ Improved logger behaviour
+ Fixed class path splitting on mac
Showing
1 changed file
with
21 additions
and
6 deletions
java/com/mumfrey/liteloader/core/LiteLoader.java
| ... | ... | @@ -17,14 +17,17 @@ import java.util.HashMap; |
| 17 | 17 | import java.util.Iterator; |
| 18 | 18 | import java.util.LinkedList; |
| 19 | 19 | import java.util.Map; |
| 20 | +import java.util.logging.ConsoleHandler; | |
| 21 | +import java.util.logging.FileHandler; | |
| 22 | +import java.util.logging.Formatter; | |
| 20 | 23 | import java.util.logging.Logger; |
| 21 | -import java.util.logging.SimpleFormatter; | |
| 22 | 24 | import java.util.logging.StreamHandler; |
| 23 | 25 | import java.util.zip.ZipEntry; |
| 24 | 26 | import java.util.zip.ZipFile; |
| 25 | 27 | import java.util.zip.ZipInputStream; |
| 26 | 28 | |
| 27 | 29 | import net.minecraft.client.Minecraft; |
| 30 | +import net.minecraft.src.ConsoleLogManager; | |
| 28 | 31 | import net.minecraft.src.IntHashMap; |
| 29 | 32 | import net.minecraft.src.NetHandler; |
| 30 | 33 | import net.minecraft.src.Packet; |
| ... | ... | @@ -34,8 +37,8 @@ import net.minecraft.src.Timer; |
| 34 | 37 | |
| 35 | 38 | import com.mumfrey.liteloader.ChatFilter; |
| 36 | 39 | import com.mumfrey.liteloader.ChatListener; |
| 37 | -import com.mumfrey.liteloader.LoginListener; | |
| 38 | 40 | import com.mumfrey.liteloader.LiteMod; |
| 41 | +import com.mumfrey.liteloader.LoginListener; | |
| 39 | 42 | import com.mumfrey.liteloader.Tickable; |
| 40 | 43 | |
| 41 | 44 | /** |
| ... | ... | @@ -63,8 +66,6 @@ public final class LiteLoader implements FilenameFilter |
| 63 | 66 | */ |
| 64 | 67 | private static Logger logger = Logger.getLogger("liteloader"); |
| 65 | 68 | |
| 66 | - private File logFile; | |
| 67 | - | |
| 68 | 69 | /** |
| 69 | 70 | * "mods" folder which contains mods and config files |
| 70 | 71 | */ |
| ... | ... | @@ -158,6 +159,20 @@ public final class LiteLoader implements FilenameFilter |
| 158 | 159 | // addURL method is used by the class loader to |
| 159 | 160 | mAddUrl = URLClassLoader.class.getDeclaredMethod("addURL", URL.class); |
| 160 | 161 | mAddUrl.setAccessible(true); |
| 162 | + | |
| 163 | + ConsoleLogManager.func_73699_a(); | |
| 164 | + Formatter minecraftLogFormatter = ConsoleLogManager.loggerLogManager.getHandlers()[0].getFormatter(); | |
| 165 | + | |
| 166 | + logger.setUseParentHandlers(false); | |
| 167 | + | |
| 168 | + StreamHandler consoleHandler = new ConsoleHandler(); | |
| 169 | + consoleHandler.setFormatter(minecraftLogFormatter); | |
| 170 | + logger.addHandler(consoleHandler); | |
| 171 | + | |
| 172 | + FileHandler logFileHandler = new FileHandler(new File(Minecraft.getMinecraftDir(), "LiteLoader.txt").getAbsolutePath()); | |
| 173 | + logFileHandler.setFormatter(minecraftLogFormatter); | |
| 174 | + logger.addHandler(logFileHandler); | |
| 175 | + | |
| 161 | 176 | } |
| 162 | 177 | catch (Exception ex) |
| 163 | 178 | { |
| ... | ... | @@ -165,7 +180,6 @@ public final class LiteLoader implements FilenameFilter |
| 165 | 180 | ex.printStackTrace(); |
| 166 | 181 | } |
| 167 | 182 | |
| 168 | - logger.addHandler(new StreamHandler(System.err, new SimpleFormatter())); | |
| 169 | 183 | } |
| 170 | 184 | |
| 171 | 185 | /** |
| ... | ... | @@ -214,7 +228,8 @@ public final class LiteLoader implements FilenameFilter |
| 214 | 228 | { |
| 215 | 229 | logger.info("Loading mods from class path"); |
| 216 | 230 | |
| 217 | - String[] classPathEntries = System.getProperty("java.class.path").split(";"); | |
| 231 | + String classPathSeparator = System.getProperty("path.separator"); | |
| 232 | + String[] classPathEntries = System.getProperty("java.class.path").split(classPathSeparator); | |
| 218 | 233 | modsToLoad = findModClasses(classPathEntries, modFiles); |
| 219 | 234 | } |
| 220 | 235 | catch (Exception ex) | ... | ... |