version 1.27, 2008/02/14 22:11:20 |
version 1.28, 2008/02/15 21:29:50 |
|
|
ForAddVar(const char *data, size_t len) |
ForAddVar(const char *data, size_t len) |
{ |
{ |
Buffer buf; |
Buffer buf; |
size_t varlen; |
int varlen; |
|
|
buf = Buf_Init(0); |
buf = Buf_Init(0); |
Buf_AddBytes(buf, len, (Byte *)UNCONST(data)); |
Buf_AddBytes(buf, len, (Byte *)UNCONST(data)); |
Line 154 For_Eval(char *line) |
|
Line 154 For_Eval(char *line) |
|
|
|
if (forLevel == 0) { |
if (forLevel == 0) { |
Buffer buf; |
Buffer buf; |
size_t varlen; |
int varlen; |
static const char instr[] = "in"; |
static const char instr[] = "in"; |
|
|
for (ptr++; *ptr && isspace((unsigned char) *ptr); ptr++) |
for (ptr++; *ptr && isspace((unsigned char) *ptr); ptr++) |
Line 197 For_Eval(char *line) |
|
Line 197 For_Eval(char *line) |
|
wrd = ptr; |
wrd = ptr; |
while (*ptr && !isspace((unsigned char) *ptr)) |
while (*ptr && !isspace((unsigned char) *ptr)) |
ptr++; |
ptr++; |
ForAddVar(wrd, (size_t)(ptr - wrd)); |
ForAddVar(wrd, ptr - wrd); |
while (*ptr && isspace((unsigned char) *ptr)) |
while (*ptr && isspace((unsigned char) *ptr)) |
ptr++; |
ptr++; |
} |
} |
Line 226 For_Eval(char *line) |
|
Line 226 For_Eval(char *line) |
|
sub = Var_Subst(NULL, ptr, VAR_GLOBAL, FALSE); |
sub = Var_Subst(NULL, ptr, VAR_GLOBAL, FALSE); |
|
|
#define ADDWORD() \ |
#define ADDWORD() \ |
(void)(Buf_AddBytes(buf, (size_t)(ptr - wrd), (Byte *)wrd), \ |
Buf_AddBytes(buf, ptr - wrd, (Byte *)wrd), \ |
Buf_AddByte(buf, (Byte)'\0'), \ |
Buf_AddByte(buf, (Byte)'\0'), \ |
Lst_AtFront(accumFor.lst, Buf_GetAll(buf, &varlen)), \ |
Lst_AtFront(accumFor.lst, Buf_GetAll(buf, &varlen)), \ |
Buf_Destroy(buf, FALSE)) |
Buf_Destroy(buf, FALSE) |
|
|
for (ptr = sub; *ptr && isspace((unsigned char) *ptr); ptr++) |
for (ptr = sub; *ptr && isspace((unsigned char) *ptr); ptr++) |
continue; |
continue; |
Line 310 For_Run(int lineno) |
|
Line 310 For_Run(int lineno) |
|
For arg; |
For arg; |
LstNode ln; |
LstNode ln; |
char **values; |
char **values; |
int i, done = 0; |
int i, done = 0, len; |
size_t len; |
|
char *guy, *orig_guy, *old_guy; |
char *guy, *orig_guy, *old_guy; |
|
|
if (accumFor.buf == NULL || accumFor.vars == NULL || accumFor.lst == NULL) |
if (accumFor.buf == NULL || accumFor.vars == NULL || accumFor.lst == NULL) |