mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-10 20:42:21 +02:00
Fixed VS settings updating issue
This commit is contained in:
parent
5934e27976
commit
1bd94d7a52
1 changed files with 31 additions and 12 deletions
|
@ -39,20 +39,36 @@ namespace IDE
|
|||
{
|
||||
sd.GetString("Bin32Path", mBin32Path);
|
||||
sd.GetString("Bin64Path", mBin64Path);
|
||||
ClearAndDeleteItems(mLib32Paths);
|
||||
for (sd.Enumerate("Lib32Paths"))
|
||||
|
||||
void ReadPaths(String pathName, List<String> paths)
|
||||
{
|
||||
var str = new String();
|
||||
sd.GetCurString(str);
|
||||
mLib32Paths.Add(str);
|
||||
}
|
||||
ClearAndDeleteItems(mLib64Paths);
|
||||
for (sd.Enumerate("Lib64Paths"))
|
||||
{
|
||||
var str = new String();
|
||||
sd.GetCurString(str);
|
||||
mLib64Paths.Add(str);
|
||||
HashSet<String> newPaths = scope .();
|
||||
List<String> prevPaths = scope .();
|
||||
for (var str in paths)
|
||||
prevPaths.Add(str);
|
||||
paths.Clear();
|
||||
|
||||
for (sd.Enumerate(pathName))
|
||||
{
|
||||
var str = new String();
|
||||
sd.GetCurString(str);
|
||||
if (newPaths.Add(str))
|
||||
paths.Add(str);
|
||||
else
|
||||
delete str;
|
||||
}
|
||||
|
||||
for (var path in prevPaths)
|
||||
{
|
||||
if (!newPaths.Contains(path))
|
||||
paths.Add(path);
|
||||
else
|
||||
delete path;
|
||||
}
|
||||
}
|
||||
|
||||
ReadPaths("Lib32Paths", mLib32Paths);
|
||||
ReadPaths("Lib64Paths", mLib64Paths);
|
||||
}
|
||||
|
||||
[CLink, StdCall]
|
||||
|
@ -68,6 +84,9 @@ namespace IDE
|
|||
#if BF_PLATFORM_WINDOWS
|
||||
StringView vsInfo = .(VSSupport_Find());
|
||||
|
||||
ClearAndDeleteItems(mLib32Paths);
|
||||
ClearAndDeleteItems(mLib64Paths);
|
||||
|
||||
for (var infoStr in vsInfo.Split('\n'))
|
||||
{
|
||||
if (infoStr.IsEmpty)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue