Changeset 27344 in webkit for trunk/JavaScriptCore/kjs/function.cpp
- Timestamp:
- Nov 1, 2007, 1:36:58 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/function.cpp
r27210 r27344 393 393 const ClassInfo ActivationImp::info = {"Activation", 0, 0, 0}; 394 394 395 ActivationImp::ActivationImp( FunctionImp* function, const List& arguments)396 : d(new ActivationImpPrivate( function, arguments))397 , m_symbolTable(& function->body->symbolTable())395 ActivationImp::ActivationImp(ExecState* exec) 396 : d(new ActivationImpPrivate(exec)) 397 , m_symbolTable(&exec->function()->body->symbolTable()) 398 398 { 399 399 } … … 479 479 JSObject::mark(); 480 480 481 if (!d->function->marked())482 d->function->mark();483 484 481 size_t size = d->localStorage.size(); 485 482 for (size_t i = 0; i < size; ++i) { … … 495 492 void ActivationImp::createArgumentsObject(ExecState* exec) 496 493 { 497 d->argumentsObject = new Arguments(exec, d->function, d->arguments, this); 498 499 // The arguments list is only needed to create the arguments object, so discard it now. 500 // This prevents lists of Lists from building up, waiting to be garbage collected. 501 d->arguments.reset(); 494 d->argumentsObject = new Arguments(exec, d->exec->function(), *d->exec->arguments(), this); 502 495 } 503 496
Note:
See TracChangeset
for help on using the changeset viewer.