~ruther/NosTale-PacketLogger

db835ac7b8029224c72cd1da5a876ae084d1fed0 — Rutherther 2 years ago bdbc0d9
fix: ensure lower allocation amounts in NosTale processes
1 files changed, 8 insertions(+), 7 deletions(-)

M src/PacketLogger/Models/NostaleProcesses.cs
M src/PacketLogger/Models/NostaleProcesses.cs => src/PacketLogger/Models/NostaleProcesses.cs +8 -7
@@ 66,12 66,12 @@ public class NostaleProcesses : IDisposable

    private async Task Refresh()
    {
        var nosTaleProcesses = CommsInjector.FindNosTaleProcesses().ToArray();
        var nosTaleProcesses = CommsInjector.FindNosTaleProcesses().Select(x => x.Id).ToArray();
        var toRemove = new List<NostaleProcess>();

        foreach (var currentProcess in Processes)
        {
            if (nosTaleProcesses.All(x => x.Id != currentProcess.Process.Id))
            if (nosTaleProcesses.All(x => x != currentProcess.Process.Id))
            {
                toRemove.Add(currentProcess);
            }


@@ 88,11 88,12 @@ public class NostaleProcesses : IDisposable

        foreach (var openProcess in nosTaleProcesses)
        {
            if (Processes.All(x => x.Process.Id != openProcess.Id) && !_errorfulProcesses.Contains(openProcess.Id))
            if (Processes.All(x => x.Process.Id != openProcess) && !_errorfulProcesses.Contains(openProcess))
            {
                var process = Process.GetProcessById(openProcess);
                NosBrowserManager nosBrowserManager = new NosBrowserManager
                (
                    openProcess,
                    process,
                    new PlayerManagerOptions(),
                    new SceneManagerOptions(),
                    new PetManagerOptions(),


@@ 103,11 104,11 @@ public class NostaleProcesses : IDisposable
                if (result.IsSuccess)
                {
                    RxApp.MainThreadScheduler.Schedule
                        (() => Processes.Add(new NostaleProcess(openProcess, nosBrowserManager)));
                        (() => Processes.Add(new NostaleProcess(process, nosBrowserManager)));
                }
                else
                {
                    _errorfulProcesses.Add(openProcess.Id);
                    _errorfulProcesses.Add(openProcess);
                    Console.WriteLine(result.ToFullString());
                }
            }


@@ 117,7 118,7 @@ public class NostaleProcesses : IDisposable

        foreach (var errorfulProcess in _errorfulProcesses)
        {
            if (nosTaleProcesses.All(x => x.Id != errorfulProcess))
            if (nosTaleProcesses.All(x => x != errorfulProcess))
            {
                errorfulToRemove.Add(errorfulProcess);
            }

Do not follow this link