Summary: | [JSC shell] Don't put empty arguments array to VM. | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Konstantin Tokarev <annulen> | ||||
Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | commit-queue, gskachkov, keith_miller, mark.lam, msaboff, saam, ysuzuki | ||||
Priority: | P2 | ||||||
Version: | WebKit Local Build | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Bug Depends on: | 154517 | ||||||
Bug Blocks: | |||||||
Attachments: |
|
Description
Konstantin Tokarev
2016-02-21 11:35:56 PST
Created attachment 271884 [details]
Patch
Comment on attachment 271884 [details]
Patch
I don't think the current approach is good because we would like to assume that there is an empty `arguments` if the CLI does not pass any arguments.
How about the following idea?
1. adding an Option (see runtime/Options.h), that controls exposing the `arguments`. Now, we can control this behavior with the environment variable JSC_XXX (If you add an option XXX, we can switch it with the environment variable JSC_XXX)
3. adding a ruby function notExposeArguments() in run-jsc-stress-tests, which defines JSC_XXX environment variable before executing the command. (Let's define addEnvVar(X, Y). And calling it as def notExposeArguments addEnvVar("JSC_XXX", "true"))
4. defining the annotation "//@ notExposeArguments" instead of "//@ skip"
(In reply to comment #2) > Comment on attachment 271884 [details] > Patch > > I don't think the current approach is good because we would like to assume > that there is an empty `arguments` if the CLI does not pass any arguments. > > How about the following idea? > 1. adding an Option (see runtime/Options.h), that controls exposing the > `arguments`. Now, we can control this behavior with the environment variable > JSC_XXX (If you add an option XXX, we can switch it with the environment > variable JSC_XXX) > 3. adding a ruby function notExposeArguments() in run-jsc-stress-tests, > which defines JSC_XXX environment variable before executing the command. > (Let's define addEnvVar(X, Y). And calling it as def notExposeArguments > addEnvVar("JSC_XXX", "true")) > 4. defining the annotation "//@ notExposeArguments" instead of "//@ skip" Problem is that I use run-layout-jsc, which does not support annotations, and my initial motivation for this change was to allow this test to pass without @ skip annotation. Though run-layout-jsc may unconditionally use this mode. Comment on attachment 271884 [details]
Patch
r=me
Comment on attachment 271884 [details] Patch Clearing flags on attachment: 271884 Committed r196948: <http://trac.webkit.org/changeset/196948> All reviewed patches have been landed. Closing bug. |