diff --git a/src/Docfx.Build/TemplateProcessors/Preprocessors/PreprocessorWithResourcePool.cs b/src/Docfx.Build/TemplateProcessors/Preprocessors/PreprocessorWithResourcePool.cs index 03ecc99638b..485ff4048cd 100644 --- a/src/Docfx.Build/TemplateProcessors/Preprocessors/PreprocessorWithResourcePool.cs +++ b/src/Docfx.Build/TemplateProcessors/Preprocessors/PreprocessorWithResourcePool.cs @@ -3,6 +3,7 @@ using Docfx.Common; using Esprima; +using Jint.Runtime; namespace Docfx.Build.Engine; @@ -71,9 +72,13 @@ public object TransformModel(object model) { return lease.Resource.TransformModel(model); } - catch (Exception e) + catch (Exception ex) { - throw new InvalidPreprocessorException($"Error running Transform function inside template preprocessor: {e.Message}"); + string message = ex is JavaScriptException jsException + ? jsException.GetJavaScriptErrorString() + : ex.Message; + + throw new InvalidPreprocessorException($"Error running Transform function inside template preprocessor: {message}"); } } }