From cfe634e8f7ced43a70e549681abe7022683cbf59 Mon Sep 17 00:00:00 2001 From: ElgarL Date: Fri, 31 Aug 2012 21:47:35 +0100 Subject: Give a better error when a subgroup is null. --- EssentialsGroupManager/src/Changelog.txt | 3 ++- .../anjocaido/groupmanager/dataholder/WorldDataHolder.java | 12 ++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) (limited to 'EssentialsGroupManager/src') diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt index 2f535277b..78204d9b7 100644 --- a/EssentialsGroupManager/src/Changelog.txt +++ b/EssentialsGroupManager/src/Changelog.txt @@ -194,4 +194,5 @@ v 2.0: - Stop using the YamlConfiguration in bukkit for our config handling. We can now support periods in world names. - Fix GlobalGroups not loading permission nodes. - Fix an error with Logging set to 'OFF' triggering a cast exception. - - No more null errors from corrupt config.yml's. \ No newline at end of file + - No more null errors from corrupt config.yml's. + - Give a better error when a subgroup is null. \ No newline at end of file diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/WorldDataHolder.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/WorldDataHolder.java index 3df3271a3..aad59e5aa 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/WorldDataHolder.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/WorldDataHolder.java @@ -861,11 +861,15 @@ public class WorldDataHolder { */ } else if (nodeData instanceof List) { for (Object o : ((List) nodeData)) { - Group subGrp = ph.getGroup(o.toString()); - if (subGrp != null) { - thisUser.addSubGroup(subGrp); + if (o == null) { + GroupManager.logger.warning("Invalid Subgroup data for user: " + thisUser.getName() + ". Ignoring entry in file: " + usersFile.getPath()); } else { - GroupManager.logger.warning("Subgroup '" + o.toString() + "' not found for user: " + thisUser.getName() + ". Ignoring entry in file: " + usersFile.getPath()); + Group subGrp = ph.getGroup(o.toString()); + if (subGrp != null) { + thisUser.addSubGroup(subGrp); + } else { + GroupManager.logger.warning("Subgroup '" + o.toString() + "' not found for user: " + thisUser.getName() + ". Ignoring entry in file: " + usersFile.getPath()); + } } } } else if (nodeData instanceof String) { -- cgit v1.2.3 From 79c70b1f657f5de77119e494a632a9335a5154bb Mon Sep 17 00:00:00 2001 From: ElgarL Date: Fri, 31 Aug 2012 21:56:46 +0100 Subject: Include the GM version when logging errors. --- EssentialsGroupManager/src/Changelog.txt | 3 ++- .../src/org/anjocaido/groupmanager/GroupManager.java | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) (limited to 'EssentialsGroupManager/src') diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt index 78204d9b7..5b409d773 100644 --- a/EssentialsGroupManager/src/Changelog.txt +++ b/EssentialsGroupManager/src/Changelog.txt @@ -195,4 +195,5 @@ v 2.0: - Fix GlobalGroups not loading permission nodes. - Fix an error with Logging set to 'OFF' triggering a cast exception. - No more null errors from corrupt config.yml's. - - Give a better error when a subgroup is null. \ No newline at end of file + - Give a better error when a subgroup is null. + - Include the GM version when logging errors. \ No newline at end of file diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java index 61bb41dd1..46ec861a3 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java @@ -246,7 +246,7 @@ public class GroupManager extends JavaPlugin { lastError = ex.getMessage(); GroupManager.logger.severe("==================================================="); - GroupManager.logger.severe("= ERROR REPORT START ="); + GroupManager.logger.severe("= ERROR REPORT START - " + this.getDescription().getVersion() + " ="); GroupManager.logger.severe("==================================================="); GroupManager.logger.severe("=== PLEASE COPY AND PASTE THE ERROR.LOG FROM THE =="); GroupManager.logger.severe("= GROUPMANAGER FOLDER TO AN ESSENTIALS DEVELOPER ="); @@ -258,7 +258,9 @@ public class GroupManager extends JavaPlugin { // Append this error to the error log. try { - String error = "=============================== GM ERROR LOG ===============================\n\n"; + String error = "=============================== GM ERROR LOG ===============================\n"; + error += "= ERROR REPORT START - " + this.getDescription().getVersion() + " =\n\n"; + error += Tasks.getStackTraceAsString(ex); error += "\n============================================================================\n"; -- cgit v1.2.3