Skip to content

Commit d92266f

Browse files
committed
fix
1 parent 83c37d2 commit d92266f

File tree

1 file changed

+11
-6
lines changed

1 file changed

+11
-6
lines changed

src/Elastic.Markdown/Myst/InlineParsers/DiagnosticLinkInlineParser.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -241,17 +241,22 @@ private static void UpdateLinkUrl(LinkInline link, string url, ParserContext con
241241
if (url.EndsWith(".md"))
242242
url = Path.ChangeExtension(url, ".html");
243243

244-
if (url.StartsWith("/") && !string.IsNullOrWhiteSpace(urlPathPrefix))
244+
245+
if (!url.StartsWith('/'))
246+
url = GetRootRelativePath(context, file);
247+
248+
if (!string.IsNullOrWhiteSpace(urlPathPrefix))
245249
url = $"{urlPathPrefix.TrimEnd('/')}{url}";
246-
else
247-
{
248-
var docsetDirectory = context.Configuration.SourceFile.Directory;
249-
url = file.FullName.Replace(docsetDirectory!.FullName, string.Empty);
250-
}
251250

252251
link.Url = !string.IsNullOrEmpty(anchor) ? $"{url}#{anchor}" : url;
253252
}
254253

254+
private static string GetRootRelativePath(ParserContext context, IFileInfo file)
255+
{
256+
var docsetDirectory = context.Configuration.SourceFile.Directory;
257+
return file.FullName.Replace(docsetDirectory!.FullName, string.Empty);
258+
}
259+
255260
private static bool IsCrossLink(Uri? uri) =>
256261
uri != null // This means it's not a local
257262
&& !ExcludedSchemes.Contains(uri.Scheme)

0 commit comments

Comments
 (0)