some work on fpc

This commit is contained in:
2025-12-30 22:13:01 +02:00
parent 842eeabbde
commit 773a541199
27 changed files with 298 additions and 101 deletions

View File

@@ -9,8 +9,8 @@
#include "winerunner.h"
CUtlVector<pid_t> g_processes;
CUtlVector<pid_t> m_processes;
class CPOSIXRunner: public IRunner
{
public:
@@ -51,7 +51,9 @@ int CPOSIXRunner::Run(CUtlString szName, CUtlVector<CUtlString>& args)
_exit(0);
}
}
g_processes.AppendTail(pid);
printf("%i %p\n",m_processes.GetSize(),m_processes.GetData());
m_processes.AppendTail(pid);
printf("%i %p\n",m_processes.GetSize(),m_processes.GetData());
return 0;
}
@@ -83,7 +85,9 @@ int CPOSIXRunner::Run(CUtlString szName, CUtlString szDirectory, CUtlVector<CUtl
_exit(0);
}
}
g_processes.AppendTail(pid);
printf("%i %p\n",m_processes.GetSize(),m_processes.GetData());
m_processes.AppendTail(pid);
printf("%i %p\n",m_processes.GetSize(),m_processes.GetData());
/* parent */
return 0;
}
@@ -95,11 +99,17 @@ int CPOSIXRunner::Run(CUtlString szName, CUtlString szDirectory, CUtlVector<CUtl
int CPOSIXRunner::Wait( void )
{
for (auto &process: g_processes)
printf("%i %p\n",m_processes.GetSize(),m_processes.GetData());
if (m_processes.GetSize())
printf("%i\n",m_processes[0]);
printf("%i %p\n",m_processes.GetSize(),m_processes.GetData());
for (int i = 0; i<m_processes.GetSize(); i++)
{
printf("p %i\n",m_processes[i]);
int status;
pid_t wpid = waitpid(process, &status, 0);
pid_t wpid = waitpid(m_processes[i], &status, 0);
}
g_processes = {};
m_processes = {};
return 0;
};