diff --git a/src/Umbraco.Web/umbraco.presentation/macro.cs b/src/Umbraco.Web/umbraco.presentation/macro.cs
index b8f94ce7b6..9e4350de77 100644
--- a/src/Umbraco.Web/umbraco.presentation/macro.cs
+++ b/src/Umbraco.Web/umbraco.presentation/macro.cs
@@ -51,6 +51,7 @@ namespace umbraco
/// Cache for .
private static Dictionary _predefinedExtensions;
+ private static XsltSettings _xsltSettings;
private const string LoadUserControlKey = "loadUserControl";
private readonly StringBuilder _content = new StringBuilder();
private const string MacrosAddedKey = "macrosAdded";
@@ -61,6 +62,13 @@ namespace umbraco
get { return Application.SqlHelper; }
}
+ static macro()
+ {
+ _xsltSettings = GlobalSettings.ApplicationTrustLevel > AspNetHostingPermissionLevel.Medium
+ ? XsltSettings.TrustedXslt
+ : XsltSettings.Default;
+ }
+
#endregion
#region public properties
@@ -822,14 +830,7 @@ namespace umbraco
try
{
- if (GlobalSettings.ApplicationTrustLevel > AspNetHostingPermissionLevel.Medium)
- {
- macroXslt.Load(xslReader, XsltSettings.TrustedXslt, xslResolver);
- }
- else
- {
- macroXslt.Load(xslReader, XsltSettings.Default, xslResolver);
- }
+ macroXslt.Load(xslReader, _xsltSettings, xslResolver);
}
finally
{