scanait: another ait segfault fix

This commit is contained in:
Jacek Jendrzej
2021-10-27 08:57:28 +02:00
parent 7f885e77d4
commit 7c22c30e0a
2 changed files with 12 additions and 5 deletions

View File

@@ -44,6 +44,7 @@ class CAit : public OpenThreads::Thread
private: private:
int dmxnum; int dmxnum;
unsigned short pid; unsigned short pid;
bool running;
std::string name; std::string name;
ApplicationInformationSectionList sections; ApplicationInformationSectionList sections;
void run(); void run();

View File

@@ -41,6 +41,7 @@ CAit::CAit()
{ {
dmxnum = 0; dmxnum = 0;
pid = 0; pid = 0;
running = false;
} }
void CAit::setDemux(int dnum) void CAit::setDemux(int dnum)
@@ -50,17 +51,22 @@ void CAit::setDemux(int dnum)
bool CAit::Start() bool CAit::Start()
{ {
if (running)
return false;
running = true;
int ret = start(); int ret = start();
return (ret == 0); return (ret == 0);
} }
bool CAit::Stop() bool CAit::Stop()
{ {
if(pid > 0){ if (!running)
int ret = join(); return false;
return (ret == 0); running = false;
}
return false; int ret = join();
return (ret == 0);
} }
void CAit::run() void CAit::run()