From 18ca3f21d61fe78f153c6054d0926d6c28205e25 Mon Sep 17 00:00:00 2001 From: Mikayla Hutchinson Date: Mon, 22 Jan 2024 23:49:11 -0500 Subject: [PATCH] Fix relative pragma tests When relative pragmas are enabled, and includes already have relative path, and there is no base bath from which to calculate relative paths, use the existing relative path as-is. --- .../Mono.TextTemplating/TemplatingEngine.CodeGeneration.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.CodeGeneration.cs b/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.CodeGeneration.cs index b618f99..72c7949 100644 --- a/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.CodeGeneration.cs +++ b/Mono.TextTemplating/Mono.TextTemplating/TemplatingEngine.CodeGeneration.cs @@ -98,8 +98,10 @@ static void GenerateTransformMethod (CodeTypeDeclaration templateType, TemplateS if (!settings.NoLinePragmas) { var filename = seg.StartLocation.FileName ?? templateFile; if (!string.IsNullOrEmpty (filename)) { - filename = Path.GetFullPath (filename); - if (pragmasRelativeToDirectory is not null) { + if (!settings.RelativeLinePragmas) { + filename = Path.GetFileName (filename); + } else if (pragmasRelativeToDirectory is not null) { + filename = Path.GetFullPath (filename); filename = FileUtil.AbsoluteToRelativePath (pragmasRelativeToDirectory, filename); } }