Changeset 31 for trunk/orca/ovalue.c
- Timestamp:
- 02/08/06 01:35:49 (3 years ago)
- Files:
-
- 1 modified
-
trunk/orca/ovalue.c (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/orca/ovalue.c
r27 r31 304 304 env->secure = 0; 305 305 306 // TODO: Do something about quickHolds stack overflow. Just use orHold()? 307 env->quickHolds = memAlloc( sizeof(OHold) * 256 ); 308 env->quickHoldsTop = env->quickHolds; 306 env->quickHolds = memAlloc( sizeof(OHold) * OR_MAX_QHOLDS ); 307 env->quickHoldsUsed = 0; 309 308 310 309 // NOTE: The data & call stacks are never resized so that it is safe … … 535 534 env->callStack.used = 0; 536 535 env->dataStack.used = 0; 537 env->quickHolds Top = env->quickHolds;536 env->quickHoldsUsed = 0; 538 537 env->error = 0; //orErrorClear; 539 538 } … … 1340 1339 OValue fileVal = *a1; 1341 1340 1341 orRefAvailErr( 2 ); 1342 1342 orRefPush( OT_FILE, a1->index ); 1343 1343 // Need to ref args? … … 1648 1648 OIndex bi = (a1 + 1)->series.it; 1649 1649 1650 orRefAvailErr( 2 ) 1650 1651 orRefPush( OT_BLOCK, cond ); 1651 1652 orRefPush( OT_BLOCK, body ); … … 2887 2888 int vi; 2888 2889 2890 orRefAvailErr( 3 ) 2889 2891 orRefPush( OT_BLOCK, a1->index ); 2890 2892 rblk = orMakeBlock(0); … … 3053 3055 int reti; 3054 3056 3057 /* Check if 2 are free because there is an orRefPush in orEval() 3058 and we can save a check there by doing it here. 3059 This is the only check which will catch an endlessly recursive does. 3060 */ 3061 orRefAvailErr( 2 ) 3055 3062 orRefPush( OT_BLOCK, blkN ); 3056 3063 … … 4239 4246 4240 4247 4248 orRefAvailErr( 4 ) 4241 4249 orRefPush( OT_BLOCK, a1->index ); 4242 4250 orRefPush( OT_BLOCK, a2->index );
