Fixed addauxref for the triple axis code
Added a writing state to status
This commit is contained in:
12
task.c
12
task.c
@@ -26,8 +26,10 @@
|
||||
#define YIELDING 3
|
||||
|
||||
#define IDUNDEFINED 0L
|
||||
#define TASKMAGIC 777111999
|
||||
/*--------------------------------------------------------------------------*/
|
||||
typedef struct __TaskHead {
|
||||
long magic;
|
||||
long lID;
|
||||
long groupID;
|
||||
int iStatus;
|
||||
@@ -68,6 +70,7 @@ static pTaskHead MakeTaskHead(char *name, TaskFunc pTask, SignalFunc pSignal,
|
||||
}
|
||||
memset(pNew, 0, sizeof(TaskHead));
|
||||
|
||||
pNew->magic = TASKMAGIC;
|
||||
pNew->name = strdup(name);
|
||||
pNew->start_time = time(NULL);
|
||||
pNew->pRun = pTask;
|
||||
@@ -106,6 +109,7 @@ static void DeleteTaskHead(pTaskHead self)
|
||||
if (self->pNext != NULL) {
|
||||
self->pNext->pPrevious = self->pPrevious;
|
||||
}
|
||||
memset(self,0,sizeof(TaskHead));
|
||||
free(self);
|
||||
}
|
||||
|
||||
@@ -492,7 +496,7 @@ pTaskHead TaskIteratorStart(pTaskMan self)
|
||||
/*-----------------------------------------------------------------------------*/
|
||||
pTaskHead TaskIteratorNext(pTaskHead it)
|
||||
{
|
||||
if(it != NULL){
|
||||
if(it != NULL && it->magic == TASKMAGIC){
|
||||
return it->pNext;
|
||||
}
|
||||
return NULL;
|
||||
@@ -546,7 +550,11 @@ const char * GetTaskName(pTaskHead it)
|
||||
/*------------------------------------------------------------------------------*/
|
||||
const void *GetTaskData(pTaskHead it)
|
||||
{
|
||||
return (const void*)it->pData;
|
||||
if(it->magic == TASKMAGIC){
|
||||
return (const void*)it->pData;
|
||||
} else {
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
/*------------------------------------------------------------------------------*/
|
||||
long GetTaskGroupID(pTaskMan self)
|
||||
|
||||
Reference in New Issue
Block a user