Summary: | Don't hold on to BindingNodes forever | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Oliver Hunt <oliver> | ||||
Component: | New Bugs | Assignee: | Oliver Hunt <oliver> | ||||
Status: | REOPENED --- | ||||||
Severity: | Normal | CC: | commit-queue | ||||
Priority: | P2 | ||||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Bug Depends on: | 132431 | ||||||
Bug Blocks: | |||||||
Attachments: |
|
Description
Oliver Hunt
2014-04-29 15:11:43 PDT
Created attachment 230429 [details]
Patch
Comment on attachment 230429 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=230429&action=review r=me > Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.cpp:196 > + // We make an isolated copy of the parameter string as we don't want to keep the > + // full source string alive. > + String parameterString = source.provider()->getRange(node->parametersStartOffset(), node->parametersEndOffset()).isolatedCopy(); An executable always keeps its full source provider alive, so I don't think isolatedCopy() is an improvement here. Comment on attachment 230429 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=230429&action=review >> Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.cpp:196 >> + String parameterString = source.provider()->getRange(node->parametersStartOffset(), node->parametersEndOffset()).isolatedCopy(); > > An executable always keeps its full source provider alive, so I don't think isolatedCopy() is an improvement here. unlinked executables don't :D Committed r167964: <http://trac.webkit.org/changeset/167964> Re-opened since this is blocked by bug 132431 |