Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion Pipeline/Build.Pages.cs
Original file line number Diff line number Diff line change
Expand Up @@ -339,6 +339,11 @@ static string EnsureSidebarPosition(string content, int position)
static string Base64Decode(string base64EncodedData)
{
byte[] base64EncodedBytes = Convert.FromBase64String(base64EncodedData);
return Encoding.UTF8.GetString(base64EncodedBytes);
// The GitHub API returns file bytes verbatim, so a UTF-8 BOM survives into the
// decoded string. A leading BOM (U+FEFF) before the first markdown heading stops
// Docusaurus from parsing it (the heading renders as a literal paragraph) and also
// breaks StripReadmeFront's H1 detection, since char.IsWhiteSpace('') is false
// and TrimStart() leaves it in place. Drop it once at the single decode chokepoint.
return Encoding.UTF8.GetString(base64EncodedBytes).TrimStart('');
}
}
Loading