- bug fixes
This commit is contained in:
31
pardef.c
31
pardef.c
@ -18,6 +18,7 @@ Markus Zolliker, March 2005
|
||||
#include "pardef.h"
|
||||
#include "sugar.h"
|
||||
#include "commandlog.h"
|
||||
#include "dynstring.h"
|
||||
|
||||
#define ILLNUM -2
|
||||
#define ILLARGC -3
|
||||
@ -458,7 +459,30 @@ static int ParExecute(SConnection * con, SicsInterp * sics, void *object,
|
||||
int iret, logIt = 0;
|
||||
ParData *o = ParCheck(&parClass, object);
|
||||
char *setArgv[2];
|
||||
|
||||
ParInfo *info;
|
||||
|
||||
/* debugging
|
||||
int i;
|
||||
printf("ParExecute");
|
||||
for (i=0;i<argc;i++) {
|
||||
printf(" %s", argv[i]);
|
||||
}
|
||||
printf("\n");
|
||||
*/
|
||||
if (argc >= 2 && 0 == strcasecmp(argv[1], "loggeditems")) {
|
||||
pDynString dyn = CreateDynString(124,128);
|
||||
for (info = o->infoList; info != NULL; info = info->next) {
|
||||
if (info->log) {
|
||||
DynStringConcat(dyn, " ");
|
||||
DynStringConcat(dyn, argv[0]);
|
||||
DynStringConcat(dyn, ".");
|
||||
DynStringConcat(dyn, info->name);
|
||||
}
|
||||
}
|
||||
SCWrite(con, GetCharArray(dyn) + 1, eValue);
|
||||
DeleteDynString(dyn);
|
||||
return 1;
|
||||
}
|
||||
ParBegin();
|
||||
ctx->callName = argv[0];
|
||||
ParSaveConn(o, con);
|
||||
@ -658,7 +682,7 @@ void ParFind(void)
|
||||
p = calloc(1, sizeof *p);
|
||||
if (p == NULL)
|
||||
return;
|
||||
p->name = ctx->parName;
|
||||
p->name = strdup(ctx->parName);
|
||||
p->log = NULL;
|
||||
p->saveIt = 0;
|
||||
p->saveLog = 0;
|
||||
@ -1436,6 +1460,9 @@ void ParKill(void *object)
|
||||
q = p->next;
|
||||
p->next = NULL;
|
||||
KillLogger(p);
|
||||
if (p->name) {
|
||||
free(p->name);
|
||||
}
|
||||
free(p);
|
||||
p = q;
|
||||
}
|
||||
|
Reference in New Issue
Block a user