diff --git a/api/src/org/labkey/api/security/GroupManager.java b/api/src/org/labkey/api/security/GroupManager.java index c89def1303c..bef4fc30145 100644 --- a/api/src/org/labkey/api/security/GroupManager.java +++ b/api/src/org/labkey/api/security/GroupManager.java @@ -205,7 +205,9 @@ private static void appendDotAttribute(StringBuilder sb, boolean prependComma, S if (prependComma) sb.append(", "); - sb.append(name).append("=\"").append(value).append("\""); + // Escape backslashes first, then quotes, to produce a valid DOT quoted string + String escaped = value.replace("\\", "\\\\").replace("\"", "\\\""); + sb.append(name).append("=\"").append(escaped).append("\""); } public static void exportGroupMembers(Group group, List memberGroups, List memberUsers, GroupType xmlGroupType) diff --git a/api/src/org/labkey/api/util/MemTrackerListener.java b/api/src/org/labkey/api/util/MemTrackerListener.java index cf917c3a14f..796286f1c46 100644 --- a/api/src/org/labkey/api/util/MemTrackerListener.java +++ b/api/src/org/labkey/api/util/MemTrackerListener.java @@ -25,7 +25,7 @@ public interface MemTrackerListener { /** * Called before GC and tallying of held objects. Implementors should purge held objects and (optionally) add - * objects to the passed in set that should be ignored . + * objects to the passed in set that should be ignored. */ void beforeReport(Set set); } diff --git a/api/src/org/labkey/api/view/template/errorView.jsp b/api/src/org/labkey/api/view/template/errorView.jsp index 04234599107..423ec25f9a0 100644 --- a/api/src/org/labkey/api/view/template/errorView.jsp +++ b/api/src/org/labkey/api/view/template/errorView.jsp @@ -24,19 +24,6 @@
-<% - StringBuilder stackTrace = new StringBuilder(); - if (null != model.getException()) - { - stackTrace.append(model.getException().toString()); - for (StackTraceElement stackTraceElement : model.getException().getStackTrace()) - { - stackTrace.append("\n"); - stackTrace.append(stackTraceElement.toString()); - } - } -%> -