Changeset 21201 for v6/smop/src/smop_slime_frame.c
- Timestamp:
- 07/03/08 23:23:38 (5 months ago)
- Files:
-
- 1 modified
-
v6/smop/src/smop_slime_frame.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
v6/smop/src/smop_slime_frame.c
r20100 r21201 174 174 SMOP__Object* node = ((smop_slime_frame_struct*)frame)->nodes[pc]; 175 175 smop_lowlevel_unlock(frame); 176 SMOP_DISPATCH(interpreter,SMOP_RI(node),SMOP__ID__ setr,177 SMOP__NATIVE__capture_create(interpreter, node,(SMOP__Object*[]){value, NULL},NULL));176 SMOP_DISPATCH(interpreter,SMOP_RI(node),SMOP__ID__result, 177 SMOP__NATIVE__capture_create(interpreter,SMOP_REFERENCE(interpreter,node),(SMOP__Object*[]){value, NULL},NULL)); 178 178 SMOP_RELEASE(interpreter,frame); 179 179 ret = SMOP__NATIVE__bool_true; … … 253 253 assert(SMOP_RI(count) == (SMOP__ResponderInterface*)SMOP__NATIVE__int); 254 254 int c = SMOP__NATIVE__int_fetch(count); 255 SMOP_RELEASE(interpreter, count); 255 256 smop_lowlevel_rdlock(frame); 256 257 int pc = ((smop_slime_frame_struct*)frame)->pc; … … 260 261 SMOP__Object* res = SMOP_DISPATCH(interpreter,SMOP_RI(node),SMOP__ID__result, 261 262 SMOP__NATIVE__capture_create(interpreter,SMOP_REFERENCE(interpreter,node),NULL,NULL)); 262 SMOP_DISPATCH(interpreter,SMOP_RI(thisnode),SMOP__ID__result, 263 SMOP__NATIVE__capture_create(interpreter,thisnode,(SMOP__Object*[]){res,NULL},NULL)); 263 SMOP_RELEASE(interpreter, 264 SMOP_DISPATCH(interpreter,SMOP_RI(thisnode),SMOP__ID__result, 265 SMOP__NATIVE__capture_create(interpreter, 266 SMOP_REFERENCE(interpreter,thisnode),(SMOP__Object*[]){res,NULL},NULL))); 264 267 ret = SMOP__NATIVE__bool_true; 265 268 SMOP_RELEASE(interpreter,frame); … … 277 280 int c = SMOP__NATIVE__int_fetch(count); 278 281 int t = SMOP__NATIVE__int_fetch(target); 282 SMOP_RELEASE(interpreter, count); 283 SMOP_RELEASE(interpreter, target); 279 284 smop_lowlevel_rdlock(frame); 280 285 int pc = ((smop_slime_frame_struct*)frame)->pc; … … 285 290 SMOP__NATIVE__capture_create(interpreter,SMOP_REFERENCE(interpreter,node),NULL,NULL)); 286 291 SMOP_DISPATCH(interpreter,SMOP_RI(thisnode),SMOP__ID__responder, 287 SMOP__NATIVE__capture_create(interpreter,thisnode,(SMOP__Object*[]){res,NULL},NULL)); 292 SMOP__NATIVE__capture_create(interpreter, 293 SMOP_REFERENCE(interpreter,thisnode), 294 (SMOP__Object*[]){(SMOP__Object*)SMOP_RI(res),NULL},NULL)); 295 SMOP_RELEASE(interpreter, res); 288 296 ret = SMOP__NATIVE__bool_true; 289 297 SMOP_RELEASE(interpreter,frame); … … 325 333 SMOP__NATIVE__capture_create(interpreter,SMOP_REFERENCE(interpreter,node),NULL,NULL)); 326 334 SMOP_DISPATCH(interpreter,SMOP_RI(thisnode),SMOP__ID__identifier, 327 SMOP__NATIVE__capture_create(interpreter, thisnode,(SMOP__Object*[]){res,NULL},NULL));335 SMOP__NATIVE__capture_create(interpreter,SMOP_REFERENCE(interpreter,thisnode),(SMOP__Object*[]){res,NULL},NULL)); 328 336 SMOP_RELEASE(interpreter,count); 329 337 SMOP_RELEASE(interpreter,target);
