Skip to content
This repository was archived by the owner on May 8, 2020. It is now read-only.

Commit f9755c2

Browse files
committed
Fix scenario where old format csproj files exists in the folder/repo being scanned
1 parent 71523d7 commit f9755c2

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

source/Magic/SourcePackageFileReaders/CsProjReader.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,14 @@ public IReadOnlyList<string> ReadDependencies(byte[] contents)
1414
{
1515
using (var ms = new MemoryStream(contents))
1616
using (var sr = new StreamReader(ms))
17+
using(var xr = XmlReader.Create(sr))
1718
{
18-
var project = (Project) new XmlSerializer(typeof(Project)).Deserialize(sr);
19-
return project.ItemGroups.Where(g => g.Packages.Any()).SelectMany(g => g.Packages).Select(p => p.Id).ToArray();
19+
var xs = new XmlSerializer(typeof(Project));
20+
if (!xs.CanDeserialize(xr)) return new string[0];
21+
22+
var project = (Project)new XmlSerializer(typeof(Project)).Deserialize(xr);
23+
return project.ItemGroups.Where(g => g.Packages.Any()).SelectMany(g => g.Packages).Select(p => p.Id)
24+
.ToArray();
2025
}
2126
}
2227
}

0 commit comments

Comments
 (0)