Skip to content

Commit c1d3ab0

Browse files
committed
Fix rendering when folders start with another one's partial match
This was causing buildTransitive/* to be grouped under build/*
1 parent 1b01911 commit c1d3ab0

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

src/dotnet-nugetize/Program.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -272,15 +272,16 @@ int Execute()
272272

273273
static int Render(IList<XElement> files, int index, int level, string path)
274274
{
275+
var normalizedLevelPath = path == "" ? Path.DirectorySeparatorChar.ToString() : (Path.DirectorySeparatorChar + path + Path.DirectorySeparatorChar);
275276
while (index < files.Count)
276277
{
277278
var element = files[index];
278279
var file = element.Element("PackagePath").Value;
279280
var dir = Path.GetDirectoryName(file);
280281
var paths = dir.Split(new[] { Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar }, StringSplitOptions.RemoveEmptyEntries);
282+
var normalizeCurrentPath = Path.DirectorySeparatorChar + string.Join(Path.DirectorySeparatorChar, paths) + Path.DirectorySeparatorChar;
281283

282-
if (!string.Join(Path.DirectorySeparatorChar, paths).StartsWith(path) ||
283-
paths.Length < level)
284+
if (!normalizeCurrentPath.StartsWith(normalizedLevelPath) || paths.Length < level)
284285
return index;
285286

286287
if (paths.Length > level)

0 commit comments

Comments
 (0)