From 8096212c52f18093166d3a64797f5ee62f15d731 Mon Sep 17 00:00:00 2001 From: zolliker Date: Fri, 24 May 2013 05:44:52 +0000 Subject: [PATCH] - introduced "stopexe run" - fixed "task ps" to show names containing ':' correctly --- devexec.c | 5 ++++- task.c | 6 +++--- taskobj.c | 13 +++++++------ 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/devexec.c b/devexec.c index d2ca0ec4..f92093b1 100644 --- a/devexec.c +++ b/devexec.c @@ -501,7 +501,10 @@ int StopExe(pExeList self, char *name) self->iRun = 0; return 1; } - + if (strcasecmp(name, "run") == 0) { + TaskSignalGroup(self->pTask, SICSINT, &interrupt, self->runID); + return 1; + } TaskSignalGroup(self->pTask, SICSINT, &interrupt, self->waitID); return 1; diff --git a/task.c b/task.c index aa7e5524..ad93c6d9 100644 --- a/task.c +++ b/task.c @@ -508,15 +508,15 @@ char *TaskDescription(pTaskHead it) } memset(result,0,length*sizeof(char)); strcpy(result,it->name); - strcat(result,":"); + strcat(result,"|"); length = strlen(result); tm = localtime((const time_t *)&it->start_time); strftime(result+length,100,"%F-%k-%m-%S",tm); length = strlen(result); - snprintf(result+length,120-20,":%ld", it->lID); + snprintf(result+length,120-20,"|%ld", it->lID); length = strlen(result); - snprintf(result+length,120-40,":%ld", it->groupID); + snprintf(result+length,120-40,"|%.0ld ", it->groupID); return result; diff --git a/taskobj.c b/taskobj.c index 28bdd58f..99a8ad8f 100644 --- a/taskobj.c +++ b/taskobj.c @@ -20,7 +20,7 @@ static int ListCmd(pSICSOBJ self, SConnection *pCon, pHdb commandNode, pHdb par[], int nPar) { pDynString result = NULL; - char buffer[256], *pDes, *pPtr, name[80], time[80],id[80]; + char buffer[256], *pDes, *pPtr, name[80], time[80], id[80], gid[80]; pTaskHead it = NULL; result = CreateDynString(128,128); @@ -35,11 +35,12 @@ static int ListCmd(pSICSOBJ self, SConnection *pCon, pHdb commandNode, for(it = TaskIteratorStart(pServ->pTasker); it != NULL; it = TaskIteratorNext(it)){ pDes = TaskDescription(it); if(pDes != NULL){ - pPtr = stptok(pDes,name,sizeof(name),":"); - pPtr = stptok(pPtr,time,sizeof(name),":"); - pPtr = stptok(pPtr,id,sizeof(name),":"); - snprintf(buffer,sizeof(buffer),"%20s %20s %12s", - name,time,id); + pPtr = stptok(pDes,name,sizeof(name),"|"); + pPtr = stptok(pPtr,time,sizeof(time),"|"); + pPtr = stptok(pPtr,id,sizeof(id),"|"); + pPtr = stptok(pPtr,gid,sizeof(gid),"|"); + snprintf(buffer,sizeof(buffer),"%20s %20s %12s %10s", + name,time,id,gid); DynStringConcat(result,buffer); DynStringConcatChar(result,'\n'); free(pDes);