Changeset 27215 in webkit for trunk/JavaScriptCore/kjs/Parser.cpp
- Timestamp:
- Oct 28, 2007, 11:49:54 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/kjs/Parser.cpp
r18837 r27215 38 38 39 39 static RefPtr<ProgramNode>* progNode; 40 static HashSet<Node*>* nodeCycles;41 42 void Parser::noteNodeCycle(Node *node)43 {44 if (!nodeCycles)45 nodeCycles = new HashSet<Node*>;46 nodeCycles->add(node);47 }48 49 void Parser::removeNodeCycle(Node *node)50 {51 ASSERT(nodeCycles);52 nodeCycles->remove(node);53 }54 55 static void clearNewNodes()56 {57 if (nodeCycles) {58 for (HashSet<Node*>::iterator it = nodeCycles->begin(); it != nodeCycles->end(); ++it)59 (*it)->breakCycle();60 delete nodeCycles;61 nodeCycles = 0;62 }63 Node::clearNewNodes();64 }65 40 66 41 PassRefPtr<ProgramNode> Parser::parse(const UString& sourceURL, int startingLineNumber, … … 91 66 *progNode = 0; 92 67 93 clearNewNodes();68 Node::clearNewNodes(); 94 69 95 70 if (parseError || lexError) {
Note:
See TracChangeset
for help on using the changeset viewer.