=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Kan/stackmachine.c,v retrieving revision 1.24 retrieving revision 1.26 diff -u -p -r1.24 -r1.26 --- OpenXM/src/kan96xx/Kan/stackmachine.c 2004/09/12 08:55:36 1.24 +++ OpenXM/src/kan96xx/Kan/stackmachine.c 2004/09/16 02:22:03 1.26 @@ -1,4 +1,4 @@ -/* $OpenXM: OpenXM/src/kan96xx/Kan/stackmachine.c,v 1.23 2004/09/12 01:53:11 takayama Exp $ */ +/* $OpenXM: OpenXM/src/kan96xx/Kan/stackmachine.c,v 1.25 2004/09/12 10:22:50 takayama Exp $ */ /* stackmachin.c */ #include @@ -981,7 +981,7 @@ int executeToken(token) if (ob.tag >= 0) { /* there is a definition in the user dictionary */ if (ob.tag == SexecutableArray) { - status = executeExecutableArray(ob,token.token); + status = executeExecutableArray(ob,token.token,0); if ((status & STATUS_BREAK) || (status < 0)) return status; }else { Kpush(ob); @@ -1580,8 +1580,8 @@ char *traceShowStack(void) { if (t == NULL) { s[p] = ';'; s[p+1] = 0; break; - }else if ((strlen(t) + p -10) > TRACE_MSG_SIZE) { - /* fprintf(stderr,"p=%d, TraceNameStackp=%d, strlen(t)=%d, t=%s\n",p,TraceNameStackp,strlen(t),t); */ + }else if ((strlen(t) + p) > (TRACE_MSG_SIZE-10)) { + /* fprintf(stderr,"p=%d, TraceNameStackp=%d, strlen(t)=%d, t=%s\n",p,TraceNameStackp,strlen(t),t); */ strcpy(&(s[p])," ..."); break; } @@ -1595,7 +1595,7 @@ char *traceShowStack(void) { /* if (fname != NULL) fname is pushed to the trace stack. */ -int executeExecutableArray(struct object ob,char *fname) { +int executeExecutableArray(struct object ob,char *fname,int withGotoP) { struct tokens *tokenArray; int size,i; int status; @@ -1611,7 +1611,7 @@ int executeExecutableArray(struct object ob,char *fnam size = ob.rc.ival; for (i=0; i