Commit Graph

84 Commits

Author SHA1 Message Date
brendan%mozilla.org
7bfd1a782c Local rooting fixes (313938, patch from igor, r/sr=me/mrbkap/shaver a=asa).
git-svn-id: svn://10.0.0.236/branches/MOZILLA_1_8_BRANCH@183307 18797224-902f-48f8-a5cc-f745e15eee43
2005-11-01 01:23:48 +00:00
mrbkap%gmail.com
d1a5daba72 bug 313236: Rolled-up branch version of the same trunk patches for this bug. r=brendan sr=jst/bzbarksy a=brendan
git-svn-id: svn://10.0.0.236/branches/MOZILLA_1_8_BRANCH@182802 18797224-902f-48f8-a5cc-f745e15eee43
2005-10-23 09:13:05 +00:00
mrbkap%gmail.com
73e4686ca0 bugs 311403, 311025, 311892, 311455: Bringing changes forward from the trunk. See the trunk for acutal bonsai blame. r+a=brendan
git-svn-id: svn://10.0.0.236/branches/MOZILLA_1_8_BRANCH@182291 18797224-902f-48f8-a5cc-f745e15eee43
2005-10-15 00:53:35 +00:00
mrbkap%gmail.com
ee65e2825a bug 311619: Make sure to grab the correct scope object. r+a=brendan
git-svn-id: svn://10.0.0.236/branches/MOZILLA_1_8_BRANCH@182017 18797224-902f-48f8-a5cc-f745e15eee43
2005-10-11 21:58:31 +00:00
mrbkap%gmail.com
d6396cb1d2 bug 311024: Make sure eval grabs the right scope object. r=brendan sr=jst a=asa
git-svn-id: svn://10.0.0.236/branches/MOZILLA_1_8_BRANCH@182012 18797224-902f-48f8-a5cc-f745e15eee43
2005-10-11 21:17:10 +00:00
timeless%mozdev.org
b163cc0e89 Bug 302100 I just downloaded Firefox 1.06, and it crashes at 004A6170 whenever I try to view any page [@ nsJSPrincipalsSubsume] using PAC
r=mrbkap sr=shaver a=bsmedberg


git-svn-id: svn://10.0.0.236/trunk@176760 18797224-902f-48f8-a5cc-f745e15eee43
2005-07-28 15:26:05 +00:00
brendan%mozilla.org
15ddfa152d Add a subsumes relation to principals so JS can handle all cases when checking indirect eval (and the like) calls (300008, r=caillon/dveditz, sr/a=shaver).
git-svn-id: svn://10.0.0.236/trunk@175859 18797224-902f-48f8-a5cc-f745e15eee43
2005-07-08 23:26:36 +00:00
brendan%mozilla.org
c1174d1919 Big patch from jst and me to beef up and automate, configurably, XPCNativeWrapper (281988, r+sr=bz/shaver, a=drivers).
git-svn-id: svn://10.0.0.236/trunk@173622 18797224-902f-48f8-a5cc-f745e15eee43
2005-05-20 03:12:22 +00:00
brendan%mozilla.org
b5d8775a4b Flag Script-object compilation so it deoptimizes fully (291213, r=shaver, a=me).
git-svn-id: svn://10.0.0.236/trunk@173341 18797224-902f-48f8-a5cc-f745e15eee43
2005-05-12 19:34:13 +00:00
brendan%mozilla.org
9d6f36e1d2 Fix so last-ditch GC doesn't collect script filenames (291312, r=shaver, a=me).
git-svn-id: svn://10.0.0.236/trunk@173058 18797224-902f-48f8-a5cc-f745e15eee43
2005-05-05 00:47:50 +00:00
brendan%mozilla.org
8695afc4e4 Find active native function principals when walking the JS stack, and beef up eval-ish native safeguards (281988, r=shaver/caillon, sr=jst, a=drivers).
git-svn-id: svn://10.0.0.236/trunk@173030 18797224-902f-48f8-a5cc-f745e15eee43
2005-05-04 06:28:36 +00:00
brendan%mozilla.org
b8b4468654 Defense in depth for eval on what should be an inaccessible scope (217195, r+sr=jst, a=chase).
git-svn-id: svn://10.0.0.236/trunk@172014 18797224-902f-48f8-a5cc-f745e15eee43
2005-04-12 01:35:05 +00:00
brendan%mozilla.org
01efe388a9 Revert kludge, want a general fix.
git-svn-id: svn://10.0.0.236/trunk@171865 18797224-902f-48f8-a5cc-f745e15eee43
2005-04-07 19:48:57 +00:00
brendan%mozilla.org
41903388e1 Stop evals and Script object calls/execs that cross trust domains (289074, r=shaver, sr=jst, a=drivers).
git-svn-id: svn://10.0.0.236/trunk@171838 18797224-902f-48f8-a5cc-f745e15eee43
2005-04-07 02:22:24 +00:00
brendan%mozilla.org
75fd1b8828 Make js_GetScriptLineExtent JS_FRIEND_API for the js shell's sake.
git-svn-id: svn://10.0.0.236/trunk@171322 18797224-902f-48f8-a5cc-f745e15eee43
2005-03-29 16:55:43 +00:00
brendan%mozilla.org
6ecd20e4a8 Fix js_LineNumberToPC to cope with code reordering, especially in JSOP_CONDSWITCH (1113352, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@168505 18797224-902f-48f8-a5cc-f745e15eee43
2005-01-29 18:31:46 +00:00
brendan%mozilla.org
d5fcaaf973 Silence a DEBUG_brendan blurb.
git-svn-id: svn://10.0.0.236/trunk@166736 18797224-902f-48f8-a5cc-f745e15eee43
2004-12-15 02:59:00 +00:00
brendan%mozilla.org
2e6bee01c4 Don't forget to call the new-script and destroy-script hooks in js_FilterXMLList, so the debugger knows about the script cloned there.
git-svn-id: svn://10.0.0.236/trunk@165772 18797224-902f-48f8-a5cc-f745e15eee43
2004-11-25 06:57:17 +00:00
brendan%mozilla.org
e1d64a36be Initial E4X check-in, configured off (246441, rs=shaver).
git-svn-id: svn://10.0.0.236/trunk@163236 18797224-902f-48f8-a5cc-f745e15eee43
2004-10-05 10:19:07 +00:00
brendan%mozilla.org
c73434d76b Add scoped local root support, plus a few cleanups from the huge e4x patch (40757, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@161009 18797224-902f-48f8-a5cc-f745e15eee43
2004-08-19 17:57:36 +00:00
brendan%mozilla.org
01497fded6 Remove bogus instanceof equivalence of distinct constructor function objects
that have the same native or script internally.  We no longer need this hack,
given regexp cloning done for precompiled scripts and functions (i.e., those
not eval'd or compile-and-go executed via a JS_Evaluate* API).

Fix a script_compile bug found during the scan of JSFRAME_EVAL occasioned by
the instanceof fix.

Bug 254067, r=shaver@mozilla.org.


git-svn-id: svn://10.0.0.236/trunk@160359 18797224-902f-48f8-a5cc-f745e15eee43
2004-08-04 17:56:31 +00:00
brendan%mozilla.org
f7b9ce6db4 Avoid harmless UMC from purify when XDR-decoding (252047, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@159893 18797224-902f-48f8-a5cc-f745e15eee43
2004-07-27 01:28:39 +00:00
brendan%mozilla.org
7cf55aa042 Mangle JS_STATIC_DLL_CALLBACK names a bit in case they're not hidden.
git-svn-id: svn://10.0.0.236/trunk@158200 18797224-902f-48f8-a5cc-f745e15eee43
2004-06-20 02:29:19 +00:00
brendan%mozilla.org
25a4d6d341 - Improve global variable performance from 3x slower to 1.2x slower than
locals (169559, r=shaver).
- Also fix longstanding bug where global regexps in precompiled scripts were
  wrongly shared among threads/contexts (165201, r=shaver).
- Also fix strict-aliasing gcc warning causes (206599, r=bryner).


git-svn-id: svn://10.0.0.236/trunk@154749 18797224-902f-48f8-a5cc-f745e15eee43
2004-04-13 01:25:17 +00:00
brendan%mozilla.org
dbe6162d4d Move script_filename_table into JSRuntime where it belongs (235145, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@153079 18797224-902f-48f8-a5cc-f745e15eee43
2004-02-22 03:21:15 +00:00
dbaron%dbaron.org
58150a14fa Backing out brendan's checkin due to tinderbox orange.
git-svn-id: svn://10.0.0.236/trunk@153077 18797224-902f-48f8-a5cc-f745e15eee43
2004-02-22 01:11:47 +00:00
brendan%mozilla.org
2247a47000 Move script_filename_table into JSRuntime where it belongs (235145, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@153072 18797224-902f-48f8-a5cc-f745e15eee43
2004-02-21 19:41:52 +00:00
brendan%mozilla.org
42c8b66573 NARCISSUS ifdefs and related general fixes (r=shaver).
git-svn-id: svn://10.0.0.236/trunk@152659 18797224-902f-48f8-a5cc-f745e15eee43
2004-02-11 07:21:59 +00:00
brendan%mozilla.org
b2008e8627 Don't JS_ReportOutOfMemory while holding script_filename_table_lock (r=self).
git-svn-id: svn://10.0.0.236/trunk@150775 18797224-902f-48f8-a5cc-f745e15eee43
2003-12-30 07:54:09 +00:00
brendan%mozilla.org
9d6a799abb Followup patch to cope with lightweight function calls (direct or via natives) to exec (227432, r=shaver, a=dbaron).
git-svn-id: svn://10.0.0.236/trunk@150182 18797224-902f-48f8-a5cc-f745e15eee43
2003-12-10 00:24:13 +00:00
brendan%mozilla.org
c03099810d Fix Script.prototype.exec called from native code (227432, r=shaver, a=asa).
git-svn-id: svn://10.0.0.236/trunk@150073 18797224-902f-48f8-a5cc-f745e15eee43
2003-12-05 04:21:05 +00:00
gerv%gerv.net
123c4a9492 Bug 205418 - Relicense Spidermonkey (js/src) to MPL/LGPL/GPL. Patch by gerv; r,a=brendan.
git-svn-id: svn://10.0.0.236/trunk@149331 18797224-902f-48f8-a5cc-f745e15eee43
2003-11-15 00:11:16 +00:00
brendan%mozilla.org
1208f020d1 Use eval's object principals if possible, ditto for other eval-like methods (223041, r=caillon, sr=shaver).
git-svn-id: svn://10.0.0.236/trunk@148699 18797224-902f-48f8-a5cc-f745e15eee43
2003-11-02 01:04:50 +00:00
brendan%mozilla.org
1280510f81 Don't under-malloc for short script filename entry (223810, r=shaver, a=dbaron).
git-svn-id: svn://10.0.0.236/trunk@148444 18797224-902f-48f8-a5cc-f745e15eee43
2003-10-27 19:13:01 +00:00
brendan%mozilla.org
09482f96d1 Split jsconfig.h JS_HAS_XDR macro for better code factoring.
git-svn-id: svn://10.0.0.236/trunk@147873 18797224-902f-48f8-a5cc-f745e15eee43
2003-10-11 18:17:53 +00:00
brendan%mozilla.org
42a28f9704 Remove false comment (whew).
git-svn-id: svn://10.0.0.236/trunk@147823 18797224-902f-48f8-a5cc-f745e15eee43
2003-10-10 01:46:55 +00:00
brendan%mozilla.org
92cda301e0 Late-breaking security fix (221526, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@147718 18797224-902f-48f8-a5cc-f745e15eee43
2003-10-07 23:02:29 +00:00
brendan%mozilla.org
fe4e2f8b11 Eliminate unnecessary local variable.
git-svn-id: svn://10.0.0.236/trunk@147133 18797224-902f-48f8-a5cc-f745e15eee43
2003-09-23 00:07:24 +00:00
brendan%mozilla.org
e27c6498b5 Restore next-to-last rev, which is harmless.
git-svn-id: svn://10.0.0.236/trunk@145944 18797224-902f-48f8-a5cc-f745e15eee43
2003-08-13 05:25:04 +00:00
darin%meer.net
6c2d85c7d5 backing out changes for bug 215878 to clear tinderbox orange (startup crash)
git-svn-id: svn://10.0.0.236/trunk@145943 18797224-902f-48f8-a5cc-f745e15eee43
2003-08-13 05:17:14 +00:00
brendan%mozilla.org
89fa1a1033 Fix js_FinishTakingSrcNotes 'logic gap' bug (215878, r=shaver, a=dveditz).
git-svn-id: svn://10.0.0.236/trunk@145932 18797224-902f-48f8-a5cc-f745e15eee43
2003-08-12 23:42:55 +00:00
brendan%mozilla.org
082f42b64a I can't believe that after all the work for bug 208030, I forgot to re-base js_GetSrcNote's notion of note origin to the script's prolog, from its main entry point (214761).
git-svn-id: svn://10.0.0.236/trunk@145647 18797224-902f-48f8-a5cc-f745e15eee43
2003-08-06 06:56:01 +00:00
brendan%mozilla.org
7c3cf78ac7 Fix off-by-N in CG_COUNT_FINAL_SRCNOTES (214210).
git-svn-id: svn://10.0.0.236/trunk@145326 18797224-902f-48f8-a5cc-f745e15eee43
2003-07-29 09:11:04 +00:00
brendan%mozilla.org
89c23462fb Undo critical part of last change to try to fix crashing testerboxes.
git-svn-id: svn://10.0.0.236/trunk@145273 18797224-902f-48f8-a5cc-f745e15eee43
2003-07-28 18:30:12 +00:00
brendan%mozilla.org
2a40dbb3c5 Minor cleanups to last checkin.
git-svn-id: svn://10.0.0.236/trunk@145263 18797224-902f-48f8-a5cc-f745e15eee43
2003-07-28 05:46:18 +00:00
brendan%mozilla.org
2532d3d12a Big dynamic footprint win via script filename caching, plus line number fix for strict/const diags (see http://bugzilla.mozilla.org/attachment.cgi?id=127130&action=view for detailed checkin comments; 208030, r/rs=shaver, r=rginda on the jsd change, r=jst on the dom change).
git-svn-id: svn://10.0.0.236/trunk@145239 18797224-902f-48f8-a5cc-f745e15eee43
2003-07-26 22:37:11 +00:00
timeless%mac.com
69ae314807 Bug 106386 rid source of misspellings
r=db48x sr=blake a=asa


git-svn-id: svn://10.0.0.236/trunk@116832 18797224-902f-48f8-a5cc-f745e15eee43
2002-03-19 04:30:17 +00:00
rginda%netscape.com
db9ee285d0 bug 110903, patch=brendan, sr=shaver, r=me
Call new script hook for scripts created via xdr.


git-svn-id: svn://10.0.0.236/trunk@108541 18797224-902f-48f8-a5cc-f745e15eee43
2001-11-20 02:47:41 +00:00
brendan%mozilla.org
2163e55b8e Add mutable (growable or dependent, two subtypes) strings to solve O(n^2) and O(n^3) growth rates (56940, r=rogerl, sr=jband&shaver).
git-svn-id: svn://10.0.0.236/trunk@106213 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-25 00:26:38 +00:00
brendan%mozilla.org
726006598c Fix for bug 99663 (for loop resolves properties of the object being enumerated
with JSRESOLVE_ASSIGNING, wrongly), plus a few miscellaneous bugfixes.

- Combine the JSStackFrame members constructing, special, overrides, and
  reserved into a uint32 flags member.

- Separate JOF_ASSIGNING from the JOF_SET bytecode format flag, and impute
  JSRESOLVE_ASSIGNING from the presence of JOF_ASSIGNING among the current
  opcode's format flags.  To handle the for-in loop opcodes, which do more
  than simply assign -- in particular, they do property lookups whose resolve
  hook outcalls should not be flagged with JSRESOLVE_ASSIGNING -- a new frame
  flag, JSFRAME_ASSIGNING, has been added.

- Fix interpreter version selection to respect JS_SetVersion, whose effect on
  cx->version is "sticky".

- Fix js_DecompileValueGenerator to deal with JSOP_ENUMELEM -- it never had,
  as this testcase shows (it crashes without this patch):

    version(120);
    eval("function fe(s) { for (it[s] in this); }");
    try { fe('rdonly'); } catch (e) { print(e); }


git-svn-id: svn://10.0.0.236/trunk@104525 18797224-902f-48f8-a5cc-f745e15eee43
2001-10-03 06:39:30 +00:00