Граф коммитов

3072 Коммитов

Автор SHA1 Сообщение Дата
nboyd%atg.com 42b2d478cd Allow null returns from SecuritySupport methods if someone only
wants to implement LiveConnect filtering
2000-09-29 13:49:47 +00:00
brendan%mozilla.org 4ed9d79e0a Fix bungled GC_KEEP_ATOMS logic (51954, r=mccabe, a=jband). 2000-09-29 00:18:15 +00:00
brendan%mozilla.org 8d730c70da Don't leave fp->sp above fp->spbase when returning, js_Invoke may GC on the way out (53123, r=mccabe, a=jband). 2000-09-29 00:11:49 +00:00
cls%seawood.org 799d3ef591 Do not use c++ comments in c file. Breaks WS5.0 compiler. 2000-09-28 08:08:02 +00:00
mccabe%netscape.com ba4d6a252b Fix to 54307. Patch courtesy Jon Smirl <jon@mediaone.net>.
Clean up several locks that jsdtoa uses, when JS_THREADSAFE.

a=brendan
r=mccabe
2000-09-28 05:14:32 +00:00
mccabe%netscape.com 897e928322 Remove unused function prototype.
r=jband
2000-09-28 02:47:40 +00:00
mccabe%netscape.com 3b57292fa9 Fix to 54305, free array holding fat locks. Patch courtesy Jon Smirl <jonsmirl@mediaone.net>.
a=brendan
r=mccabe
2000-09-27 21:52:27 +00:00
jband%netscape.com b416a15d43 NOT PART OF BUILD. fixing tools bustage 2000-09-26 10:23:23 +00:00
pschwartau%netscape.com 0aefd9f03b Adding new test case for scope check and creating js1_5 test suite. 2000-09-25 21:24:09 +00:00
nboyd%atg.com 7f2239a2c4 Miscellaneous formatting changes. 2000-09-25 14:07:45 +00:00
nboyd%atg.com 142af94b8f Drop unneeded references. 2000-09-25 14:06:47 +00:00
nboyd%atg.com adc731c1e6 Fix enum.js regression. 2000-09-25 14:04:20 +00:00
waldemar%netscape.com eded78869f Added void and classof operators 2000-09-24 06:08:53 +00:00
waldemar%netscape.com 0e94e874c9 Made implements clauses js2-only 2000-09-23 08:15:06 +00:00
brendan%mozilla.org 5c322995b7 Fix two distinct bugs with similar symptoms (53123, r=law, a=jband). 2000-09-23 01:23:53 +00:00
jeff.dyer%compilercompany.com d5d760afb0 #45692:r=edburns,a=brendan. Followup fixes for oji liveconnect security. 2000-09-22 13:48:20 +00:00
waldemar%netscape.com e9fac36551 Major revisions for Sep 18 and 21 language changes 2000-09-22 08:16:22 +00:00
waldemar%netscape.com baf53149b3 Removed "constructor" keyword 2000-09-22 08:14:56 +00:00
jband%netscape.com 418b39b154 - Use the thread context service rather than our own JSContext. This makes
us less unthreadsafe. Use THREADSAFE nsISupports impl macro. bug 52936
- Add JS_{Begin,End}Request. bug 39373
- Call xpc->InitClass on each global - not just the superglobal. bug 52591
- Remove some gotos using auto classes for cleanup.
- Converted WITH_SERVICE calls to do_GetService.
- Consistent placement of contractID strings.
a=shaver@mozilla.org
2000-09-21 04:30:32 +00:00
jband%netscape.com 3dcad1b0a6 rest of the fix for bug 53268. a=brendan@mozilla.org 2000-09-21 03:56:42 +00:00
brendan%mozilla.org ccf7a9fae9 Fix 53268, r=jband. 2000-09-21 01:37:02 +00:00
rogerl%netscape.com 668c8ce522 Cleanup warning fix. 2000-09-19 20:56:49 +00:00
rogerl%netscape.com 9a22c0ee19 Fixed warnings for gcc build. 2000-09-19 20:35:05 +00:00
beard%netscape.com a160285334 Fixed startup/terminate routines. 2000-09-19 05:38:23 +00:00
beard%netscape.com 49e2480b9c [Not part of build] Really increase default heap size, to 8192. 2000-09-19 02:50:00 +00:00
beard%netscape.com 89a295bdc4 Bumped up memory/stack. 2000-09-19 02:34:41 +00:00
brendan%mozilla.org 2861dff1f3 Add strict warning for undefined property reference (foo.bar where bar names no object in foo or its prototypes; r=jband). 2000-09-19 02:24:11 +00:00
brendan%mozilla.org 490bf8236e Fix JS_BeginRequest to avoid self-deadlock if called from a finalizer (52808, r=jband). 2000-09-19 02:18:17 +00:00
jband%netscape.com ef7bb615cc fix shutdown crasher bug 52940. We can't leave the thread context stack service thinking that the context we are about to delete is still valid. a,r=brendan@mozilla.org 2000-09-19 01:09:48 +00:00
beard%netscape.com b35d6552f0 Create SIOUX console with menus, etc. r=jband, a=brendan 2000-09-18 23:49:46 +00:00
brendan%mozilla.org de5d6d74b9 Censor all Call objects, per ECMA-262 (r=rogerl, 53037). 2000-09-18 23:35:22 +00:00
brendan%mozilla.org 1f03cb71d4 - Fix encodeURI, decodeURI, etc. common subroutines to avoid realloc'ing char
by char, by using a larger chunk size (64 chars) for linear growth.  Also got
  rid of ASCII-oriented add_bytes subroutine and related sprintf usage.
- Avoid reloading loop invariant str->chars all the time in encode and decode.
- Avoid creating garbage strings for unescaped and reserved character sets, by
  using statically initialized jschar array constants.
- Expand tabs, clean up 80th column violations, use prevailing style, etc.
2000-09-18 22:17:30 +00:00
nboyd%atg.com b8f186828a Expand javadoc. 2000-09-18 18:38:02 +00:00
nboyd%atg.com 7457687f89 Remove old-style debug codegen. 2000-09-18 17:57:02 +00:00
nboyd%atg.com a6150b9fff Better error message for common error. 2000-09-18 17:28:59 +00:00
beard%netscape.com dee42157a2 Make XPC shell compile on XP_MAC. r=jband, a=brendan 2000-09-17 15:34:39 +00:00
jband%netscape.com 51e5128d17 NOT PART OF BUILD. Fix xpconenct test uses of progids missed in the big progid to contractid renaming 2000-09-16 22:17:23 +00:00
brendan%mozilla.org 3d0b204150 - Back out part of patch from tlundeen@webcrossing.com, my fault for taking it
in part (the entire patch made JSContexts ref-counted, but that is not an API
  compatible change, and it doesn't help clean up at JS_Finish time if the API
  user leaks JSContext refs anyway).  52835, r=jband.
- First part of 64-bit portability fix for 52792, r=jnance.  More work needed.
- Fix bogus assert and minimization in js_AllocStack, too.
2000-09-16 22:17:22 +00:00
jband%netscape.com d50e6f9d65 NOT PART OF BUILD. Fix xpconenct test uses of progids missed in the big progid to contractid renaming 2000-09-16 21:47:32 +00:00
beard%netscape.com d8c9e5842f [Not part of build] Project to build XPConnect shell testbed. 2000-09-16 02:43:29 +00:00
jband%netscape.com 6eabb6acbd fix bug 39373. make xpconnect calls into JS within a request for safety. a,r=brendan@mozilla.org 2000-09-15 06:59:38 +00:00
jband%netscape.com feed45599c fix bug 52579. Avoid infinite recursion dialog when JS is run by xpconnect on DOM context. a,r=brendan@mozilla.org 2000-09-15 06:17:08 +00:00
brendan%mozilla.org 84aaf06fe8 Better patch for bug and bogus assertion found by rogerc@geocast.com. 2000-09-15 06:05:28 +00:00
rayw%netscape.com d39d9e6d59 Bug fix for 52648 -- remaining stash of progids which I missed on
the mega-change yesterday.  This will fix a few more issues.

r=warren
2000-09-14 23:20:49 +00:00
rogerl%netscape.com b0bb9eeddc Bug #46429. r=rginda. Fixed bug in nested quantifiers. 2000-09-14 22:39:21 +00:00
brendan%mozilla.org ed8364faab Fix bogus new assertion in js_AllocGCThing (r=rogerc@geocast.com). 2000-09-14 19:58:11 +00:00
brendan%mozilla.org da262c552a Fixes to make JS GC truly exact:
- All jsvals for which JSVAL_IS_GCTHING evaluates to true must contain tagged
pointers into the GC heap -- therefore jsapi.c's JS_DefineConstDoubles cannot
"cheat" by tagging addresses of static jsdoubles to avoid js_NewNumberValue.

- Finalization is now interleaved with the Sweep phase, to avoid allocating
memory for finalization records while sweeping.  Instead, the JSRuntime holds a
preallocated JSGCThing vector (gcFinalVec) that the Sweep phase fills and
flushes via gc_finalize_phase, repeatedly.

This means that finalizers cannot allocate a new GC thing, an incompatible but
plausible change.  js_AllocGCThing asserts and then checks whether it is called
while rt->gcLevel is non-zero, and fails the allocation attempt if so.  But this
fixes bug 38942, where the old sweep-then-finalize with a sweep => malloc
dependency could lead to memory exhaustion.

- Instead of scanning whole stackPool arenas, which led to UMRs (bug 27924) and
sometimes to gross over-scanning that depended on the GC bounds-checking all
thing pointers against its heap, we scan exactly those stack slots in use:
  - arguments reachable from fp->argv;
  - variables reachable from fp->vars;
  - operands now reachable from fp->spbase, bounded above by the lesser of
    fp->sp or fp->spbase + fp->script->depth for an interpreted frame; if the
    latter, fp->sp has advanced logically above the operand budget, in order to
    call a native method, and all unused slots from fp->sp up to depth slots
    above fp->spbase must be set to JSVAL_VOID;
  - stack segments pushed when calling native methods, prefixed by JSStackHeader
    structs and linked from cx->stackSegments through each header.
The stack segment headers help the GC avoid scanning unused portions of the
stack: the generating pc slots running depth slots below fp->spbase, and slots
at the end of an arena that aren't sufficient to satisfy a contiguous allocation
for more args, vars, or operands.

- Exact GC means the stack pointer must remain above live operands until the
interpreter is done with them, so jsinterp.c got heavily whacked.  Instead of
POPs of various kinds followed by a PUSH for binary operators (e.g.), we use
FETCH and STORE macros that index by -1 and -2 from sp, and minimize adjustments
to sp.  When sp is homed to fp->sp, this allows js_DecompileValueGenerator to
find the value reliably, and if possible its generating pc.

- Finally, the O(n**2) growth rate of gc_find_flags has been fixed, using the
scheme sketched in bug 49816 and documented in a new major comment in jsgc.c.
Briefly, by allocating flags and things from one arena, we can align things on
1024-byte "thing page" boundaries, and use JSGCPageInfo headers in each page to
find a given thing's flags in O(1) time.

/be
2000-09-14 06:14:45 +00:00
rayw%netscape.com 52476868db fix to mal-formed contract id introduced in mega-check-in:x 2000-09-14 04:18:07 +00:00
rayw%netscape.com 6cc70ebd6c Bug 37275, Changing value of all progids, and changing everywhere a progid
is mentioned to mention a contractid, including in identifiers.

r=warren
2000-09-13 23:57:52 +00:00
brendan%mozilla.org d3ef2ed32f Fix uninitialized var bug found by one warning, silence another that's a can't-happen (r=jwbaker@acm.org). 2000-09-12 19:42:01 +00:00
nboyd%atg.com b192d90466 Fix infinite loop in new code. 2000-09-12 17:06:15 +00:00
jeff.dyer%compilercompany.com ca2b6410e1 b=45692 r=rogerl a=brendan: Enable liveconnect security. 2000-09-12 11:50:49 +00:00
beard%netscape.com d99198e4bc Fixing scope problems on Linux 2000-09-12 00:53:33 +00:00
waldemar%netscape.com 7ee18425f8 Renamed target files 2000-09-11 23:49:53 +00:00
rogerl%netscape.com 871fb6eab9 Removed unnecessary arg. from Call instruction. 2000-09-11 22:11:55 +00:00
rogerl%netscape.com 68c488539e Added getter/setter for names. 2000-09-11 22:10:44 +00:00
rginda%netscape.com 2ae0bfa864 reverting old volatile fix for 24892 and replacing with cls' union patch.
spider and xpshell now pass the related testcases.
author=cls, r=me
2000-09-11 20:56:33 +00:00
nboyd%atg.com cd2482f9f2 Fix bug 49350 2000-09-11 15:12:04 +00:00
nboyd%atg.com 4c70d53d5e version with debugger directories 2000-09-11 14:10:23 +00:00
brendan%mozilla.org 4b88e28559 Fix C++ portability and AIX compilation problem due to last C++ porting attempt (48976, r=jdunn@netscape.com). 2000-09-09 05:53:00 +00:00
waldemar%netscape.com 005c605136 Added support for highlights. Made @ operator js2-only. 2000-09-09 02:15:37 +00:00
waldemar%netscape.com 7223a2e334 Updated to correspond to js2 site 2000-09-09 02:15:06 +00:00
waldemar%netscape.com 6c173aab33 Added support for highlights. 2000-09-09 02:14:35 +00:00
rginda%netscape.com 25a6903bfd add fileName and lineNumber to Error.prototype for bug #50447
r=a=brendan
2000-09-09 00:41:15 +00:00
brendan%mozilla.org d8b759c670 Comments and white-space cleanup. 2000-09-08 21:24:14 +00:00
alla%lysator.liu.se 405c7b811f Implement js_CompareAndSwap for GCC x86 (Linux, FreeBSD etc). This gives us fast thin locks on Linux. bug 20357 r=brendan a=brendan
This version should now work on older binutils too.
2000-09-08 12:13:39 +00:00
alla%lysator.liu.se 47d1d132c3 Reverting last change. 2000-09-08 09:28:56 +00:00
alla%lysator.liu.se d0c3a704c2 Implement js_CompareAndSwap for GCC x86 (Linux, FreeBSD etc). This gives us fast thin locks on linux.
bug 20357, r=brendan a=brendan
2000-09-08 08:59:37 +00:00
beard%netscape.com 722dc39edf All JSValue constructors are explicit. 2000-09-08 01:16:03 +00:00
rogerl%netscape.com 7ca98a95c6 Added Branch_initialized for argument handling. 2000-09-07 19:23:24 +00:00
rogerl%netscape.com 3e08d30492 Named arguments. 2000-09-07 19:22:59 +00:00
rogerl%netscape.com 29c3f3caa8 Named arguments 2000-09-07 19:22:13 +00:00
jband%netscape.com 45fb207d7e fix bug 13125. Add support for wrapped native xpcom objects to be used as __proto__ objects for JavaScript objects. a,r=brendan@mozilla.org 2000-09-07 18:49:06 +00:00
brendan%mozilla.org 1b378df792 Improve JSNewEnumerateOp comment per recent exchange with Helge Hess. 2000-09-07 18:06:02 +00:00
rogerl%netscape.com 1c4303af1c copy non-named args through 2000-09-06 02:17:47 +00:00
rogerl%netscape.com d6618351c4 fix for redundancy 2000-09-06 02:17:18 +00:00
rogerl%netscape.com 0a5401ac02 Fix for empty function body 2000-09-06 02:16:51 +00:00
brendan%mozilla.org 9e22c923eb Improve a comment that implied a need to include jsstr.h. 2000-09-05 21:39:48 +00:00
brendan%mozilla.org 5527354734 Must JS_SetGlobalObject at least, if not JS_InitStandardClasses, before defining native functions at startup. 2000-09-04 00:10:06 +00:00
scc%mozilla.org 0411ae4a6b fixing bustage exposed by removing extra comparisons 2000-09-03 03:28:05 +00:00
brendan%mozilla.org 1b4cfb986d Support external string GC types so XPConnect and other systems can optimize away copies (50602, r=jband). 2000-09-02 20:37:37 +00:00
jband%netscape.com ffb8d0a867 fix crasher bug 51176. xpti semantics for GetParent changed sometime back and I did not find all the cases where this mattered. thanks to mang@subcarrier.org. a,r=brendan@mozilla.org 2000-09-02 20:30:56 +00:00
rogerl%netscape.com 35c2183566 Switch from RegisterList to ArgumentList to handle named args.
Optional & rest parameter support.
2000-09-02 01:01:41 +00:00
rogerl%netscape.com 8c56203872 Optional and rest parameters.
Named arguments (just begun).
2000-09-02 01:01:04 +00:00
brendan%mozilla.org 6303228f09 Followup for 44997, r=shaver:
- #if JS_HAS_LVALUE_RETURN around cx->rval2/rval2set defs and uses.
- Instrument different kinds of invocations, #ifdef DEBUG only.
- Clean up basis case of empty switch statement to use high = -1, low = 0,
  requiring care when optimizing in-range tests using unsigned casts, but
  freeing the interpreter and decompiler from having to do an extra test
  before looping from low to high.
- Clean up all codegen to use JUMP_OFFSET_LEN, ATOM_INDEX_LEN, etc. instead of
  magic 2 or 4.
- Add JSOP_TRY and JSOP_FINALLY no-ops to save a srcnote per JSOP_NOP, and to
  make decompilation and jit'ing easier.
- Minimize number of source notes to maximize SRC_XDELTA span.
- Use JSSCRIPT_FIND_CATCH_START in throw code.
- Indentation and bracing nits picked.
2000-09-01 18:42:22 +00:00
brendan%mozilla.org b11ea5a651 Fix js_EnterSharpObject to clean up sharpObjectMap on error (44009, r=shaver). 2000-09-01 18:01:04 +00:00
jband%netscape.com a5d8f71528 fix bug 50941 by updating help text. r=shaver@mozilla.org a=brendan@mozilla.org 2000-09-01 01:02:39 +00:00
brendan%mozilla.org ff4e039487 Support ECMA reference type return from native methods (44997, r=shaver). 2000-09-01 00:45:50 +00:00
waldemar%netscape.com dca152c48e Added jsdhash.c 2000-08-31 20:41:33 +00:00
jband%netscape.com 91431137bb fix to un-bust XPCONNECT_STANDALONE build (#ifdef'd out code for the browser) from shaver@mozilla.org 2000-08-31 10:44:28 +00:00
brendan%mozilla.org dec096cac0 Fix GC_MARK_DEBUG bustage (r=dbaron, not part of build unless you -D it). 2000-08-31 03:41:36 +00:00
brendan%mozilla.org 396485e045 Forgot to round capacity up to nearest power of two\! r=bienvenu. 2000-08-31 03:12:40 +00:00
beard%netscape.com 3940913be4 bug #44187: added guards to prevent crashes when Java not available. r=jband 2000-08-31 02:37:42 +00:00
brendan%mozilla.org c1a33908b2 Script to NSPR-ize and 'PL-ize' jsdhash.[ch] so they fit (sort of) over in xpcom/ds. 2000-08-30 19:30:33 +00:00
nboyd%atg.com 13689ccca6 Better javadoc 2000-08-30 13:41:15 +00:00
mkaply%us.ibm.com 31422b574a #50212
r=brendan, a=brendan
OS/2 GCC doesn't define _M_IX86
2000-08-30 01:04:59 +00:00
brendan%mozilla.org a9f537b714 Finish fixing 42221, for sure. 2000-08-29 23:09:47 +00:00
mccabe%netscape.com f80b936149 Potential fix to 50313
Initialize stack variable to NULL on suspicion that later possibly-unset use of it is causing crash.
2000-08-26 07:10:31 +00:00
brendan%mozilla.org 72259545ec Clean up JSObjectOps layering violations by adding mark and clear ops; JSClass gets a corresponding mark op so classes with unregistered roots in private data can mark them. The JS API gets a new JS_MarkGCThing entry point for JSObjectOps.mark implementors. Prerequisite check-in for bug 49816 and others (r=shaver). 2000-08-26 02:30:22 +00:00
brendan%mozilla.org 0bd1873977 Lazily define escape and unescape (via js_InitStringClass) only #ifndef MOZILLA_CLIENT, because the DOM must predefine backward-compatible versions of these functions that 'stick' (42221, r=mccabe). 2000-08-26 02:05:41 +00:00
mccabe%netscape.com b81dd96492 Fix to 39141.
Check for empty element case in array literals ( first element in [,'foo'] ) now uses the next token instead of the previous one when constructing the node, so the first element gets TOK_COMMA instead of TOK_LB.

This fixes a crash from previously accepted JS.

r=rogerl
2000-08-26 01:44:35 +00:00
brendan%mozilla.org c2a345b42b Macro-ize FPU mode fixing and do it on ever js_InitNumberClass; also, simplify #ifdefs to unify OS2 with XP_PC && _M_IX86 case (50212, r=mkaply@us.ibm.com). 2000-08-25 03:14:50 +00:00
jband%netscape.com 126a33230c bug 49748. Fix crash due to JS loader holding xpconnect service too long. Also add unimplemented method to xpconnect service and fix cast for bug 49641. r=shaver@mozilla.org a=brendan@mozilla.org 2000-08-24 07:50:27 +00:00
beard%netscape.com dd483f92da use QueryElementAt() to save space and time. r=shaver 2000-08-24 04:10:47 +00:00
brendan%mozilla.org 79e140d05d Eliminate silly gcc warning. 2000-08-24 03:14:17 +00:00
brendan%mozilla.org 1167c13750 Add strict warning about trailing comma in object initializers being non-ECMA (50001, r=shaver). 2000-08-23 23:55:43 +00:00
rogerl%netscape.com cf4cfc6b82 Fixed printOperands to handle <NaR> 2000-08-23 01:07:19 +00:00
rogerl%netscape.com e66ddfe600 Fixed printOperand to handle <NaR> properly. Added missing 'return this' to
all constructors.
2000-08-23 01:06:52 +00:00
rogerl%netscape.com fbca44a130 r,a=beard@netscape.com. Bug #45415, fix LiveConnect memory leak. 2000-08-22 23:31:09 +00:00
nboyd%atg.com 98027f7ff1 Fix bug 48930: work around a MS JIT bug. 2000-08-22 17:04:21 +00:00
waldemar%netscape.com 0700924be5 Added arguments to attributes; made 'use', 'namespace', and 'constructor' into keywords and simplified resulting grammar; merged attribute definitions into const definitions; made eval use function call syntax; renamed 'language' to 'use'. 2000-08-22 04:31:37 +00:00
waldemar%netscape.com 5200b2308b Added \Q escape 2000-08-22 04:29:34 +00:00
waldemar%netscape.com b60ff5b98f Added line-break constraint 2000-08-22 04:29:01 +00:00
waldemar%netscape.com d502901d6a Made terminal constraint error message more detailed 2000-08-22 04:28:01 +00:00
brendan%mozilla.org 36d7d7ffd0 Fix UMR on ok in JS_ResolveStandardClass (46703, r=rogerl). 2000-08-22 00:25:17 +00:00
pavel%gingerall.cz 5871a2c6c0 - JSVALToSV handles perl objects in the right way 2000-08-21 16:52:49 +00:00
nboyd%atg.com c1c435731a Fix bug 49325. 2000-08-21 15:56:15 +00:00
nboyd%atg.com d55dd0cde5 Fix class path 2000-08-21 15:51:57 +00:00
brendan%mozilla.org 5e88ad7a0a Re-constipate JSClass.name. 2000-08-19 19:17:32 +00:00
jband%netscape.com e117ff9576 fix the warnings that went along with the last bustage fix - in case one of the compilers needs it. brendan can fix as he likes in the morning 2000-08-19 10:36:45 +00:00
jband%netscape.com 74edc9d97c fix bustage 2000-08-19 10:22:13 +00:00
brendan%mozilla.org 1c45c63e32 Move shell to DIRS from ENABLE_TESTS ifdef addition to DIRS (r=mccabe,leaf). 2000-08-19 08:41:34 +00:00
brendan%mozilla.org 9d16e66aad Support lazy initialization of standard classes and their associated global functions/properties (46703, r=jband,rogerl). 2000-08-19 08:37:07 +00:00
brendan%mozilla.org b100da9c08 Add stub entry struct and ops for const void *keys, split out JS_DHashTableRawRemove, beefed up comments (part of 46703, r=jband). 2000-08-19 08:36:32 +00:00
cls%seawood.org 469c427b58 Use the -n32 ABI as the default for Irix 6.x but allow the option to disable it. 2000-08-19 08:05:05 +00:00
jband%netscape.com 764e0f7ef4 Add support for -w and -s for reporting warnings and doing strict JS checking (as supported by the engine). Also update the usage info. ra=brendan@mozilla.org 2000-08-19 03:28:01 +00:00
jband%netscape.com aa629031f9 Adding better diagnostic message to help in finding and fixing mismatched calls to JS_AddNamedRoot/JS_RemoveRoot. ra=brendan@mozilla.org 2000-08-19 03:25:16 +00:00
beard%netscape.com e0bf09d5b8 added debugger classes. 2000-08-19 02:42:05 +00:00
brendan%mozilla.org 415d5448ff Add jsdhash. 2000-08-18 00:04:53 +00:00
nboyd%atg.com 3f0f44cc1a Fix for bug 49302 2000-08-17 12:37:32 +00:00
nboyd%atg.com 29f3436810 Fix 49301. 2000-08-17 12:28:46 +00:00
rogerl%netscape.com e98da0f355 Backing out fix to see if Linux build passes alivetest. 2000-08-17 00:30:57 +00:00
rogerl%netscape.com 963fe8b249 Bug #31255. r,a=brendan. Once more unto the '-->' accepted as line comment
fix.
2000-08-16 22:46:04 +00:00
rogerl%netscape.com 230bda8aea Bug #39141, r=mccabe, a=beard. Fix crash for empty array initializer. 2000-08-16 22:43:26 +00:00
shaver%mozilla.org ef25ecf277 Fix 47354 and 39975 by providing a system-privileged scope backstop for
JS Components, and teaching the ScriptSecurityManager to check for
XPC-wrapped native objects in the scope chain when looking for an
object's principal. r=jband/a=brendan
2000-08-16 04:01:02 +00:00
nboyd%atg.com 426c97af16 Merge changes from EXP_DEBUGGER branch into tip.
Implements simple command-line debugger for scripts.
2000-08-15 15:54:46 +00:00
mccabe%netscape.com 08a7acd612 Fix to 39438.
Add a TokenStream entry to the regexp parser state so that regexps compiled at script-compilation time can report filename and line number on error.
2000-08-11 23:51:12 +00:00
conrad%ingress.com 008b9ba5fb Changed from using strings for nsIDirectoryService props to using macro names defined in nsDirectoryServiceDefs.h r=valeski 2000-08-11 20:31:57 +00:00
waldemar%netscape.com 7bc998fc6f Updated to generate Netscape 6-compatible HTML 2000-08-11 06:27:55 +00:00
waldemar%netscape.com c99d99da39 Added attributes to for-initializers and no-line-breaks in a few places 2000-08-11 06:27:25 +00:00
waldemar%netscape.com 7c9cec02ab Updated to match documentation site 2000-08-11 06:24:57 +00:00
waldemar%netscape.com 917c30fb01 Updated to match styles.css on documentation site 2000-08-11 06:24:39 +00:00
mccabe%netscape.com bb5fe130e4 Back in backed-out fix. 2000-08-11 02:58:30 +00:00
mccabe%netscape.com 121f13f6ad Backout until I can figure out why mac doesn't like strlen here, even though it seems OK elsewhere. 2000-08-10 23:32:03 +00:00
mccabe%netscape.com 7486821862 Fix to 46566.
Always copy the current line string out of the token buffer when generating an error report, rather than just passing the token buffer itself.  The token buffer wasn't necessarily a well-terminated string, so displaying the contents of the string in the error report produced unexpected results.

The unicode string in the error report is owned by a JSString; this string is rooted for the (stack-based) lifetime of the error report.

Fix courtesy jband.

r=mccabe
a=beard
2000-08-10 23:02:39 +00:00
mccabe%netscape.com 80888bc8ae Fix to 34425 -
Always create an error report, even when there is no current stack frame and it might be empty.  This fixes an API regression; we used to allow JS_ReportError to be called from the API when no JavaScript was running.

r=rogerl
a=beard
2000-08-10 22:57:40 +00:00
mccabe%netscape.com 3ef2f70f03 Fix to 47409 -
Don't use timezone comment in javascript Date object toString string if it looks like it might not be ASCII.

a,r=beard
2000-08-10 22:54:45 +00:00
brendan%mozilla.org fe5af9cfa3 Fix cut-and-paste bugs in JavaMember_finalize (48304, r=pschwartau). 2000-08-10 03:09:41 +00:00
mccabe%netscape.com 28cb72d740 Cast some parameters to PRUnichar * from jschar * to make the Mac happy. 2000-08-09 23:42:24 +00:00
mccabe%netscape.com 3ec109ea38 Fix to 24688. Post a message to the JavaScript console whenever a call is made through XPConnect to a JS Component or other JS object that results in an exception.
Also eliminate xpcJSErrorReport and merge some functionality from it into nsScriptError.

r=jband,a=beard
2000-08-09 22:48:52 +00:00
rogerl%netscape.com 5cabacffb2 r,a=brendan@mozilla.org. Adding missing ECMA3 compliance toLocaleXXX
functions to built-in Array, Date and Object object prototypes.
2000-08-09 21:46:03 +00:00
nboyd%atg.com 067dbf82fb fix 47859 2000-08-09 20:23:50 +00:00
nboyd%atg.com 6505531063 Fix 47859 2000-08-09 20:22:37 +00:00
rogerl%netscape.com 7dd101a0af r=brendan, bug# 34276. Fix for correctly including winsock2.h. 2000-08-08 20:28:49 +00:00
rogerl%netscape.com 8d6efefdc6 (update to fix for bug #31255). Previous patch was insufficient in that it
didn't handle the case when the tokenstream is not tokenizing newlines.
2000-08-08 20:24:56 +00:00
rogerl%netscape.com f3529e06b0 Added 'static' to global object routines. 2000-08-04 20:54:24 +00:00
rogerl%netscape.com b7a244e864 Oops. Left icode output on by default, now off. 2000-08-04 20:37:42 +00:00
rogerl%netscape.com 54317af353 Prototype munging for built-in global properties, implemented Function
object & Boolean object.
2000-08-04 20:28:35 +00:00
waldemar%netscape.com 12dc591a84 Made link order consistent 2000-08-02 23:09:53 +00:00
waldemar%netscape.com 9e6ed90896 Fixed Mac errors and warnings 2000-08-02 23:09:29 +00:00
jband%netscape.com 96a94769c3 interim fix for bug 25180. Build double wrappers around JS components used by JS code. Includes secured scheme for getting at underlying JSObject for those who really need to do this. a=warren r=rginda 2000-08-02 03:57:59 +00:00
beard%netscape.com ee310fed4c fixing warnings, removing need for JStrings to be copied for mClass 2000-08-02 03:53:04 +00:00
nboyd%atg.com dcf4e1e9e4 Fix javadoc. 2000-07-31 21:19:05 +00:00
rginda%netscape.com 10d5245302 shut up "unused param" warnings by only naming the register param if the icode uses a RegisterList operand. 2000-07-29 02:00:12 +00:00
nboyd%atg.com 057fb2785e Experimental changes for debugger. 2000-07-27 14:54:13 +00:00
rogerl%netscape.com 16e74e371a Patch from Norris :
A Rhino user has complained about concurrency problems in the interpreter,
and I think the attached diff fixes some problems that could be caused if
the same interpreted function or script was called simultaneously from
two different threads.
2000-07-26 23:04:14 +00:00
mccabe%netscape.com aff2fb4f1e Not part of the Mozilla build.
Promulgate line-editing to the lcshell standalone command-line interpreter, and add more comments to the js shell support for the same.
2000-07-26 03:14:49 +00:00
rogerl%netscape.com 4105edc56c Function prototype objects etc. 2000-07-26 01:56:47 +00:00
rogerl%netscape.com 785fb348fd More ECMA 3 mucking about to support constructors etc. 2000-07-25 22:58:04 +00:00
brendan%mozilla.org 23e7eef778 What a dork, I didn't test-build on Linux! 2000-07-24 21:28:08 +00:00
putterman%netscape.com 0d22a278e4 backing out brendan's changes to fix build 2000-07-24 21:13:13 +00:00
morse%netscape.com 737f59960d attempt to fix build bustage 2000-07-24 21:03:41 +00:00
brendan%mozilla.org dd89a16a61 Micro-optimize source (compilers probably do it, but hey); fix a comment. 2000-07-24 20:17:24 +00:00
brendan%mozilla.org 5510a3a176 Fix broken code that stored off the end of 'vector' in ProcessArgs (not part of build). 2000-07-24 20:13:50 +00:00
brendan%mozilla.org a4164779e0 Fix second (prototype-owns-property) setter/shared special case to unlock properly (45940, r=mccabe). 2000-07-22 01:03:04 +00:00
rogerl%netscape.com b3b9f1eed2 r=brendan@mozilla.org Bug #31381 Bug in Alpha 64-bit pointer cast.
Added extra 'long'field to Java wrapper object to handle platforms with
64 bit pointers.
2000-07-21 21:57:29 +00:00
rogerl%netscape.com 0f1f29797d r,a=brendan@mozilla.org. Bug #23502, crash in qsort when user function
misbehaves.
2000-07-21 21:46:22 +00:00
nboyd%atg.com f452ceaa23 Fix 45928 NativeDate uses getDeclaredConstructor instead of getConstructor 2000-07-21 17:13:09 +00:00
beard%netscape.com 02fe5b2d84 added jsmath.cpp/h 2000-07-21 05:07:29 +00:00
beard%netscape.com e7b6d31185 XML project file. 2000-07-21 05:07:05 +00:00
beard%netscape.com e67d7257c7 update dependencies to include jsmath.o 2000-07-21 05:01:10 +00:00
beard%netscape.com ec770e5462 add jsmath.cpp to the build. 2000-07-21 05:00:43 +00:00
beard%netscape.com a915099fef scope of loop variables fix 2000-07-21 05:00:10 +00:00
rogerl%netscape.com 4ae568de5e Implementing Object.prototype object and global object for ECMA 3
Adding Math class support.
2000-07-21 01:16:49 +00:00
jband%netscape.com 196dad70b4 drastically reduce unnecessary malloc calls from js_Atomize. r=brendan@mozilla.org. a=brendan@mozilla.org 2000-07-21 00:57:19 +00:00
dougt%netscape.com 07462eab19 more debug information. r=jband. 2000-07-21 00:53:07 +00:00
jband%netscape.com 4b23169051 fix for crash that can happen when wrapped JS objects get accessed after xpconnect shutdown. This was burning outside users of xpconnect. bug 45669. r=mccabe@netscape.com a=brendan@mozilla.org 2000-07-19 06:15:32 +00:00
jband%netscape.com 895baf831b fix bustage from dougt's last change to this file. not part of build. r=dougt@netscape.com 2000-07-19 06:11:12 +00:00
jband%netscape.com d64b148f22 patches from madams@janna.com to build xpconnect standalone. bug 42026. r=leaf@mozilla.org a=brendan@mozilla.org 2000-07-19 03:36:27 +00:00
rogerl%netscape.com cfd4e435be Removed all xxxCall, using simple call for everything.
Changed methods to use mMethods vector instead.
Various other fixes etc.
2000-07-18 20:53:03 +00:00
beard%netscape.com 0a43ce9109 Added ClassOutput.java, WrapHandler.java. 2000-07-18 01:29:34 +00:00
beard%netscape.com a831464e86 cleaned up by removing widenCString() calls when using world.identifiers 2000-07-17 20:39:19 +00:00
nboyd%atg.com c0a575bf5b Fix javadoc error. 2000-07-17 14:08:28 +00:00
brendan%mozilla.org 282dc9d68d Remove unused vars and WIN16 crap; improve freelist-scavenging code to avoid taking too big an arena off the freelist in the case where nb > arenasize (41381 again, r=jband@netscape.com). 2000-07-15 19:12:49 +00:00
mcafee%netscape.com decadd6ee1 Ignore generated files 2000-07-15 15:56:34 +00:00
rginda%netscape.com 5873d1f4ef removing bogus assert (per rogerl) 2000-07-15 00:01:25 +00:00
beard%netscape.com 793761a64f added operator[](const char*) to StringAtomTable. 2000-07-14 23:10:02 +00:00
rogerl%netscape.com 3efd4c7ae7 Fixed slots for non-function vars, plus bug in slot xcrement. 2000-07-14 22:23:20 +00:00
brendan%mozilla.org bfa5020e72 Fix for..in loop bug that reopened 41126 (r=jband@netscape.com). 2000-07-14 05:37:40 +00:00
brendan%mozilla.org aa640b04e4 Fix 41381 regression from last fix attempt (r=jband). 2000-07-14 05:35:08 +00:00
jband%netscape.com 5aed7f0953 Fix dropProperty crash. This is needed because the JSObjects used by xpconnect wrapped natives need to act both as host objects with non-slot properties and as a plain JSObjects using the default JSOps and all that entails. So, we can't be passing the host-style props to dropProperty though we do still need to do so for other props. This has only been working up to now by luck. r=brendan@mozilla.org a=brendan@mozilla.org 2000-07-14 05:34:46 +00:00
rogerl%netscape.com 394eae2d67 Backed out time() 2000-07-14 01:46:14 +00:00
rogerl%netscape.com 9d9a2397fe Type targetted binary operators.
Added 'time()' function as native.
2000-07-14 01:00:53 +00:00
jband%netscape.com ca2743a4e9 add THREADSAFE nsISupports implementation macros to some of the classes which lacked them. bug 45404. a=brendan@mozilla.org 2000-07-13 23:04:15 +00:00
brendan%mozilla.org 16c0b57382 Why didn't the lack of this break Linux, where I tested? 2000-07-13 05:56:28 +00:00
syd%netscape.com 319637810d Add support to JS profiler for collecting min, max, and average execution
times of functions. Doesn't yet handle rentrancy. Create Makefile.in files
so this stuff will build on *nix. r=jband, a=leaf
2000-07-13 05:19:22 +00:00
brendan%mozilla.org 87fdbe9365 Try again for bug 41381, r=wtc@netscape.com 2000-07-13 05:08:35 +00:00
brendan%mozilla.org b718a50b56 Uh oh. Back out last change until I'm sure I'm not an idiot. 2000-07-13 04:00:33 +00:00
brendan%mozilla.org d727cfab13 Fix ancient bugs: compare-and-swap is not threadsafe given A-B-A address replay via malloc/free; release to mark in pool->first empty arena would not free anything, as troy@tellme.com found (41381, r=wtc@netscape.com). 2000-07-13 03:49:22 +00:00
beard%netscape.com c85b319f3b need <stdio.h> for fopen on the Mac. 2000-07-13 02:23:55 +00:00
beard%netscape.com 7d2456d02a fixing readEvalFile to save off important Context data members. implemented identical_Default for string 2000-07-13 01:35:57 +00:00
beard%netscape.com 4a274478e3 fixing readEvalFile() by creating another Context 2000-07-13 00:44:30 +00:00
rogerl%netscape.com bc2242f4d4 Switching to generic binary operator in order to distinguish situation
where Operators package had been loaded and be able to generate typed
versions of the binary operators otherwise.
2000-07-13 00:14:54 +00:00
dougt%netscape.com c422448137 bug 40750.
Adding followSymlink flag to nsILocalFile.
Adjusting callers.
windows shortcut optimizations.
r=blizzard@mozilla.org.
a=brendan@mozilla.org
2000-07-12 23:31:31 +00:00
jdunn%netscape.com 79a7d94f44 do not include -lm for HPUX (as well as BeOS)
r= leaf@mozilla.org
2000-07-12 22:41:17 +00:00
brendan%mozilla.org 5e34c8be8b Fix 'out of order' malloc failure-handling bug found by cgn1234@yahoo.com (41022, r=cgn1234). 2000-07-12 01:44:12 +00:00
rogerl%netscape.com 6982a7a85f Implemented Import -only it's not in the parser yet.
Added missing defineXXX functions.
2000-07-11 23:49:20 +00:00
rginda%netscape.com 0521d8724e cleaned up linux warnings, minor debugger tweaks 2000-07-11 23:08:03 +00:00
rogerl%netscape.com 892b3e4cff More on @ operator. Fixed R 4billion print bug. 2000-07-11 20:54:06 +00:00
rogerl%netscape.com aa83a57078 Some parts of x@<name> working. 2000-07-10 23:18:07 +00:00
jband%netscape.com 938d6e31d0 add previously overlooked support for nsIXPCNativeCallContext implementors to signal that they have set the method return value for the JS caller. a=brendan@mozilla.org r=vidur@netscape.com 2000-07-10 22:39:37 +00:00
rogerl%netscape.com 4fa8a32d3b r=brendan@mozilla.org, Fix for #31255, support '-->' on line by itself as
a line comment - allows old, bogus HTML to execute a la 4.X.
2000-07-10 20:23:54 +00:00
rogerl%netscape.com 38133a200e r=brendan@mozilla.org, Fix for #44013 - enforce security for defineGetter
& defineSetter by calling OBJ_CHECK_ACCESS.
2000-07-10 20:21:38 +00:00
brendan%mozilla.org 13a173485a Fix an out-of-date comment. 2000-07-08 02:35:56 +00:00
brendan%mozilla.org 897fd3f942 Make it safe to nest a GC from js_AllocGCThing, ultimately from the interpreter; also make sure we collect all garbage (even garbage created by finalizers who unroot or unlock GC-things) when destroying the last context (39125, 44376, r=mccabe@netscape.com). 2000-07-08 02:06:01 +00:00
rogerl%netscape.com 0d7c4bc5c1 Support for 'constructor'. 2000-07-08 01:08:29 +00:00
nboyd%atg.com 81838e4e1f Deprecate FlattenedObject. 2000-07-07 14:41:35 +00:00
waterson%netscape.com f9fee044e1 Brendan meant to add jsdhash.h to the Mac build, too. 2000-07-06 20:55:23 +00:00
waterson%netscape.com c929d69839 Brendan meant add jsdhash.c to the Mac build, too. 2000-07-06 20:54:17 +00:00
rogerl%netscape.com f677b9a1dd Removed preprocess step, consolidated identifier handling. 2000-07-06 18:26:26 +00:00
brendan%mozilla.org 5fea88fc63 Fix lying comment, pick control flow nit (r=lumpy,a=jack). 2000-07-06 07:38:11 +00:00
brendan%mozilla.org d77f792685 Add jsdhash.h to export/install lists, and jsdhash.c/.obj. 2000-07-06 04:46:18 +00:00
brendan%mozilla.org 9f75367cb3 Avoid 80th column violations and unnecessary local variable. 2000-07-06 01:15:08 +00:00
brendan%mozilla.org c55f98ab95 Undo teeny optimization from rev 3.28, alas it breaks ECMA Ed. 3, 15.5.4.15. 2000-07-06 00:30:46 +00:00
nboyd%atg.com 434558cabc Remove obsolete references to NodeFactory. 2000-07-05 17:08:26 +00:00
nboyd%atg.com 0dd0718a81 Subject:
Re: Rhino1.5.R1: problems with multithreaded embedded application.
        Date:
             Mon, 03 Jul 2000 14:38:56 -0400
       From:
             Norris Boyd <nboyd@atg.com>
 Organization:
             Art Technology Group
         To:
             Fergus Gallagher <Fergus.Gallagher@orbisuk.com>
 Newsgroups:
             netscape.public.mozilla.jseng
  References:
             1




You found a bug in Rhino; I wonder if others have been running into the same thing.

The problem is with a class called LazilyLoadedCtor. I wrote this class to reduce the
time
required by initStandardObjects by only creating standard objects when the associated
constructors are first accessed. The problem is that this class was not threadsafe.
I've
made changes to that class, and to ScriptableObject as well. The design of dynamic
properties calling getters and setters (which LazilyLoadedCtor uses) didn't really
allow
any way for the getter/setter to replace itself without a thread hazard. I've now
extended
setters so that they can return a value which replaces the getter/setter to avoid this
problem.

Thanks for finding this problem. There have been a couple of other reports of problems
in
this area, so I hope this will fix them.

The patch follows.

--N

Index: LazilyLoadedCtor.java
===================================================================
RCS file: /cvsroot/mozilla/js/rhino/org/mozilla/javascript/LazilyLoadedCtor.java,v
retrieving revision 1.1
diff -u -r1.1 LazilyLoadedCtor.java
--- LazilyLoadedCtor.java 2000/02/29 21:34:37 1.1
+++ LazilyLoadedCtor.java 2000/07/03 18:31:03
@@ -58,9 +58,12 @@
     }

     public Object getProperty(ScriptableObject obj) {
-        obj.delete(ctorName);
         try {
-            ScriptableObject.defineClass(obj, Class.forName(className));
+            synchronized (obj) {
+                if (!isReplaced)
+                    ScriptableObject.defineClass(obj, Class.forName(className));
+                isReplaced = true;
+            }
         }
         catch (ClassNotFoundException e) {
             throw WrappedException.wrapException(e);
@@ -83,11 +86,14 @@
         return obj.get(ctorName, obj);
     }

-    public void setProperty(ScriptableObject obj, Object val) {
-        obj.delete(ctorName);
-        obj.put(ctorName, obj, val);
+    public Object setProperty(ScriptableObject obj, Object val) {
+        synchronized (obj) {
+            isReplaced = true;
+            return val;
+        }
     }

     private String ctorName;
     private String className;
+    private boolean isReplaced;
 }
Index: ScriptableObject.java
===================================================================
RCS file: /cvsroot/mozilla/js/rhino/org/mozilla/javascript/ScriptableObject.java,v
retrieving revision 1.17
diff -u -r1.17 ScriptableObject.java
--- ScriptableObject.java 2000/03/13 17:12:36 1.17
+++ ScriptableObject.java 2000/07/03 18:31:04
@@ -246,11 +246,21 @@
                             break;
                         }
                     }
-                    getterSlot.setter.invoke(start, arg);
+                    Object v = getterSlot.setter.invoke(start, arg);
+                    if (getterSlot.setterReturnsValue) {
+                        slots[slotIndex].value = v;
+                        if (!(v instanceof Method))
+                            slots[slotIndex].flags = 0;
+                    }
                     return;
                 }
                 Object[] args = { this, actualArg };
-                getterSlot.setter.invoke(getterSlot.delegateTo, args);
+                Object v = getterSlot.setter.invoke(getterSlot.delegateTo, args);
+                if (getterSlot.setterReturnsValue) {
+                    slots[slotIndex].value = v;
+                    if (!(v instanceof Method))
+                        slots[slotIndex].flags = 0;
+                }
                 return;
             }
             catch (InvocationTargetException e) {
@@ -1183,6 +1193,7 @@
         slot.delegateTo = delegateTo;
         slot.getter = getter;
         slot.setter = setter;
+        slot.setterReturnsValue = setter != null && setter.getReturnType() !=
Void.TYPE;
         slot.value = null;
         slot.attributes = (short) attributes;
         slot.flags = flags;
@@ -1551,6 +1562,7 @@
     Object delegateTo;  // OPT: merge with "value"
     Method getter;
     Method setter;
+    boolean setterReturnsValue;
 }




Fergus Gallagher wrote:

> I am having problems getting my head around contexts and scopes and my
> multi-threaded application fall over.
>
> If I set "global=false" the following code used a per-thread
> initStandardObject() and this seems to work.  But when I set
> "global=true", the global "parentScope" is used and I get some wierd
> errors.
>
> If I change "__CODE__.slice(0,5)" to
> 1. "__CODE__" - works
> 2. "__CODE__.substring(0,5)" - fails
> 3. "__CODE__.toString()" - works
>
> Any help appreciated.
>
> Fergus
>
> ===== Test.java =========================================
> import java.io.*;
> import org.mozilla.javascript.*;
>
> public class Test implements Runnable {
>         private Script script;
>         private Scriptable parentScope;
>         private String __CODE__="ABCDEFGHIJK";
>         private boolean global = true;
>         private static Context globalContext = null;
>         public Test() throws Exception {
>                 String js= "java.lang.System.out.println(__CODE__.slice(0,5));";
>                 globalContext.setCompileFunctionsWithDynamicScope(false);
>                 parentScope = globalContext.initStandardObjects(null);
>                 StringReader sr = new StringReader(js);
>                 script = globalContext.compileReader(parentScope, sr, "(compiled)",
> 1,null);
>         }
>
>         public void run() {
>                 try {
>                         Context context = Context.enter();
>                         Scriptable threadScope;
>                         if (global) {
>                                 threadScope = context.newObject(parentScope);
>                                 threadScope.setPrototype(parentScope);
>                                 threadScope.setParentScope(null);
>                         } else {
>                                 threadScope = context.initStandardObjects(null);
>                         }
>                         threadScope.put("__CODE__",threadScope,__CODE__);
>                         script.exec(context,threadScope);
>                 }
>                 catch (Exception e) {
>                         System.err.println(e.getClass().getName()+":
"+e.getMessage());
>                 }
>                 finally {
>                         Context.exit();
>                 }
>         }
>
>         public static void main(String args[]) throws Exception {
>         globalContext = Context.enter();
>                 Test me = new Test();
>                 int count=10;
>                 Thread[] threads = new Thread[count];
>                 for (int i=0; i<count; i++) {
>                         Thread t = new Thread(me);
>                         threads[i] = t;
>                         t.start();
>                 }
>                 for (int i=0; i<count; i++) {
>                         threads[i].join();
>                 }
>                 Context.exit();
>         }
> }
>
> ==== OUTPUT ===============================================
> ABCDE
> ABCDE
> org.mozilla.javascript.EcmaError: undefined is not a function.
> org.mozilla.javascript.EvaluatorException: Constructor for "String" not
> found.
> org.mozilla.javascript.EvaluatorException: Constructor for "String" not
> found.
> org.mozilla.javascript.EvaluatorException: Constructor for "String" not
> found.
> org.mozilla.javascript.EvaluatorException: Constructor for "String" not
> found.
> org.mozilla.javascript.EvaluatorException: Constructor for "String" not
> found.
> org.mozilla.javascript.EvaluatorException: Constructor for "String" not
> found.
> org.mozilla.javascript.EvaluatorException: Constructor for "String" not
> found.
> ===========================================================
>
> The number and type of exceptions is highly variable from run to run -
> anywhere from 1-9 out of 10.
> The EcmaError in particular only happens occasionally.
>
> --
> Fergus Gallagher          Tel: +44 (20) 8 987 0717
> Orbis                     Fax: +44 (20) 8 742 2649
> The Swan Centre           email: Fergus.Gallagher@orbisuk.com
> Fishers Lane              Web: http://www.orbisuk.com
> London W4 1RX / UK
2000-07-03 18:40:35 +00:00
jband%netscape.com a49977b549 updating readme. Not part of build 2000-07-02 19:37:57 +00:00
cls%seawood.org e1e6c5760f Removed obsolete REQUIRES variable from every Makefile.in/makefile.win 2000-06-30 08:08:04 +00:00
jband%netscape.com 9ec0b005fc Fix dogfood/crash bugs: 42750, 39858 and fix 43897 and improve JS/XPConnect error reporting to help with crasher 40792. r=mccabe@netscape.com. 2000-06-30 04:04:46 +00:00
beard%netscape.com ae75194337 Fix build bustage. 2000-06-29 18:40:58 +00:00
rogerl%netscape.com 289a28647c use handleDot for call, too. 2000-06-29 18:30:47 +00:00
beard%netscape.com 14a33e366c delete property support. 2000-06-29 18:14:14 +00:00
beard%netscape.com 6cbfacc80c DELETE_PROP 2000-06-29 18:13:46 +00:00
beard%netscape.com 9d7d45fa72 DELETE_PROP 2000-06-29 17:14:56 +00:00
beard%netscape.com b713041cec added DELETE_PROP instruction to implement the "delete" operation. 2000-06-29 17:11:50 +00:00
beard%netscape.com 9a805c2a95 unused parameter warning 2000-06-29 05:48:09 +00:00
beard%netscape.com cbf9cb60d0 complementary operator delete(void*, JSClass*). 2000-06-29 05:46:36 +00:00
beard%netscape.com b3c8568faa some classes to test js2 with. 2000-06-29 04:49:48 +00:00
beard%netscape.com 4db6e8e886 updated dependencies 2000-06-29 04:25:10 +00:00
beard%netscape.com ac2fd0c4c1 Changed StaticCall to use static slot. 2000-06-29 04:23:56 +00:00
beard%netscape.com 5cfc10557a Fixing static dotted expressions. 2000-06-29 04:23:20 +00:00
beard%netscape.com aef07e6b97 now uses conditional compilation #if defined(OPCODE_NAMES), so that a simple "icode.h" can be included by vmtypes.h and vmtypes.cpp. 2000-06-29 04:21:00 +00:00
beard%netscape.com d059b655ef moved all machine generated classes, etc. to icode.h. 2000-06-29 04:19:19 +00:00
beard%netscape.com da44337f32 Generated by tools/gencode.pl. 2000-06-29 04:18:16 +00:00
beard%netscape.com ea4574b835 fixed static calls. 2000-06-29 03:15:52 +00:00
rogerl%netscape.com 8d0b4fe645 Implicit this and class lookup stuff. 2000-06-29 01:21:41 +00:00
cls%seawood.org d7e09e3e95 wrap ifndef XPCONNECT_STANDALONE around xpconnect test components that require external interfaces. Thanks to Mark Adams <madams@janna.com> for the patch. Bug 42026 2000-06-28 22:53:55 +00:00
beard%netscape.com 6df39dd186 implemented JSClass::printProperties(). 2000-06-28 19:46:13 +00:00
beard%netscape.com 3436603e6b Enhanced printing of types. 2000-06-28 19:45:44 +00:00
beard%netscape.com d2acc1ba67 Type of a JSType* is Type_Type (wow, recursive). Changed mBaseType to be JSType* instead of const JSType*. 2000-06-28 19:45:09 +00:00
rogerl%netscape.com b5f49320b8 First set of unified 'dot' handling changes for statics. 2000-06-28 18:41:30 +00:00
beard%netscape.com a18901a26b added jsclasses.h 2000-06-28 18:10:04 +00:00
beard%netscape.com c1a38ed9f4 Fix string <. 2000-06-28 16:38:20 +00:00
beard%netscape.com 9be70600fd Fixed dynamic lookup of static slots. Added code to compare strings. 2000-06-28 16:32:52 +00:00
beard%netscape.com 33919341f2 GET_STATIC/SET_STATIC/STATIC_XCR now use an index rather than a name. Implemented GET_PROP/SET_PROP for class objects (looks up slot dynamically, etc.) 2000-06-28 16:15:06 +00:00
beard%netscape.com c9b03781ae GET_STATIC/SET_STATIC/STATIC_XCR now use an index rather than a name. Now using JSClass::hasStatic() rather than looking up statics in class' scope. 2000-06-28 16:14:18 +00:00
beard%netscape.com 9755202d7e GET_STATIC/SET_STATIC/STATIC_XCR now use an index rather than a name. 2000-06-28 16:13:12 +00:00
beard%netscape.com b3b52a1138 Static slots. 2000-06-28 16:11:54 +00:00
cls%seawood.org 8e8437f9fd Tweaks to build xpconnect standalone. Bug #42024. Thanks to Mark Adams <madams@janna.com> for the patches. 2000-06-28 07:03:13 +00:00
beard%netscape.com b76277c865 Win-specific operator== noise. 2000-06-27 03:52:56 +00:00
beard%netscape.com 42f735d5df Fixed unitialized static class members. 2000-06-27 03:43:40 +00:00
beard%netscape.com cda9175d80 addSlot -> defineSlot, added defineStatic. 2000-06-27 03:42:42 +00:00
brendan%mozilla.org a17ba70026 Not again\! 2000-06-27 03:29:49 +00:00
beard%netscape.com 6bc554cd25 Fixed type management. 2000-06-27 03:21:33 +00:00
brendan%mozilla.org 326fe4c9b8 Fix my stupid missing comma bustage. 2000-06-27 03:17:47 +00:00
rogerl%netscape.com b3fecb38fa lots of stuff me and Patrick did 2000-06-27 02:39:32 +00:00
brendan%mozilla.org 1a3dbef568 Fix JS_SetPrototype and __proto__ setting to deal with shared scopes; use JSObjectOps for setProto and setParent operations, and add spare op slots (41126, r=shaver@mozilla.org,pschwartau@netscape.com). 2000-06-27 02:37:25 +00:00
beard%netscape.com b3158ce94f JSValue::operator==: added CASE(type) to fix warning. 2000-06-26 17:47:07 +00:00
beard%netscape.com 5c98bc5892 added JSObject::deleteProperty(), and changed mName in JSType to be a JSString. Need to revisit other uses of String soon. 2000-06-26 17:42:20 +00:00
beard%netscape.com f7dd6dbe83 simplified string addition 2000-06-26 17:25:25 +00:00
beard%netscape.com 65ba0e5b4c defined JSStringBase, and constructors from in JSString 2000-06-26 17:24:57 +00:00
beard%netscape.com 6a014e14e7 String addition: don't share structure with LHS. 2000-06-26 17:09:27 +00:00
beard%netscape.com 8df08ef410 added constructor from JSString&. 2000-06-26 16:55:01 +00:00
beard%netscape.com ef32468a54 Reset register usage after generating each initializer statement. 2000-06-26 15:19:45 +00:00
beard%netscape.com 0b99360f25 Simplified NEW_CLASS, using a single do .. while loop, introducing nextPC instruction iterator to simplify initial case. now calls all defined constructors. 2000-06-26 15:06:36 +00:00
beard%netscape.com 75649210c7 Only call non-null constructors. 2000-06-25 17:04:38 +00:00
beard%netscape.com d02dfb7e9d Conditionally set constructor, if it has any instructions. 2000-06-25 17:04:01 +00:00
beard%netscape.com 1ad57a537f updated dependencies 2000-06-25 16:44:29 +00:00
beard%netscape.com 26e7244738 check for non-null superClass 2000-06-25 16:43:25 +00:00
beard%netscape.com 85c8c4b500 hooked up superClass' scope as the prototype of a class's scope, to do method inheritance, removed bogus JSInstance::getSlotCount(), which overcounted slots. 2000-06-25 16:35:33 +00:00
beard%netscape.com c06681035f Added calls to superClass constructors. 2000-06-24 22:42:43 +00:00
beard%netscape.com 7b4f21e16e JSInstance::getSlotCount() no longer recursive. 2000-06-24 22:42:15 +00:00
beard%netscape.com 8127cef905 Beginning support for superclass slots. 2000-06-24 22:07:00 +00:00
beard%netscape.com c8cdd76d90 Added emptyArgs, removed unused return value in readEvalFile 2000-06-24 05:42:51 +00:00
beard%netscape.com 196dfcb773 enable RTTI 2000-06-24 05:36:52 +00:00
beard%netscape.com 0dcdb5889f VC++ doesn't like local classes in templates. 2000-06-24 05:36:09 +00:00
beard%netscape.com 5d6bcd66f6 major surgery to enable the "load()" native function. 2000-06-24 05:25:33 +00:00
beard%netscape.com 7b61502b1e Experiment with looking up methods in the prototype chain. 2000-06-24 05:22:23 +00:00
beard%netscape.com d16865cfcb Always use the target object, regardless of where a method property is found along the prototype chain. 2000-06-24 05:21:49 +00:00
beard%netscape.com b8667057a3 When generating a reference to "this" use the current code generator's mClass when appropriate. 2000-06-24 05:21:03 +00:00
rginda%netscape.com 5159f8b51d fixing source stepping (opcode stepping to come back later)
debugger is now quiet by default.
2000-06-24 02:53:29 +00:00
beard%netscape.com 6519ffb31d Removed JSType::isClassType(). 2000-06-24 02:51:34 +00:00
beard%netscape.com be1f23517c Added JSClass::get/setConstructor(). 2000-06-24 02:51:03 +00:00
beard%netscape.com 83ca8f326d Added call to constructor when executing NEW_CLASS. 2000-06-24 02:50:23 +00:00
beard%netscape.com cb43927903 Generating default constructor to run slot initializers. 2000-06-24 02:49:45 +00:00
beard%netscape.com db5e4eeed7 testCompile() is static 2000-06-24 01:04:58 +00:00
rogerl%netscape.com 1f65c8a44c typing 'this' 2000-06-24 01:02:34 +00:00
rogerl%netscape.com ac7b311416 Got newClass working, added printProperties for instances, some slot
stuff is happening.
2000-06-24 00:50:59 +00:00
beard%netscape.com 69d8a01263 added NEW_CLASS instruction, to instantiate classes. 2000-06-23 23:49:48 +00:00
beard%netscape.com 24a81ca7ca added NEW_CLASS instruction. 2000-06-23 23:49:17 +00:00
rogerl%netscape.com 3930dfffb9 Adding slot handling to code gen. 2000-06-23 23:43:24 +00:00
beard%netscape.com 2be0b299fc added NEW_CLASS instruction. 2000-06-23 23:41:27 +00:00
beard%netscape.com a313672e06 Added JSClass::hasSlot, getSlotCount(), and JSInstance. 2000-06-23 23:25:55 +00:00
beard%netscape.com 8132a040d4 JSValue::type now JSType* instead of const JSType*, all predefined JSType objects no longer const as well. 2000-06-23 23:25:14 +00:00
rogerl%netscape.com 9d4fb54c88 Removed FUNCTION instruction, other class related junk. 2000-06-23 22:53:09 +00:00
rginda%netscape.com b4077ed50c Added debugger opcode, change InstructionMap to a std::map, print source lines while tracing 2000-06-23 22:27:17 +00:00
rogerl%netscape.com a03db28a3b Add return statement if the function doesn't end with one 2000-06-23 21:20:03 +00:00
beard%netscape.com 0b87b860eb added assertion to ensure that mPC is always valid before fetching the next instruction. 2000-06-23 06:10:14 +00:00
beard%netscape.com 107dbc95b6 Additional JSClass processing: defining slots, generating methods. 2000-06-23 05:13:04 +00:00
beard%netscape.com ff711f4a8f When using a JSScope that has a parent scope, don't bother defining the standard properties, they will be shared. 2000-06-23 05:10:46 +00:00
beard%netscape.com 03ee321bef A JSClass is a JSType now, and has a JSScope. Added addSlot, getSlot, getScope. 2000-06-23 05:09:37 +00:00
beard%netscape.com e03ab761d7 remove unused file. 2000-06-23 04:10:04 +00:00
drapeau%eng.sun.com 72597d4d70 Two main things:
1) Fix for 23775 (three files changed for this)

2) Many OJI unit tests added.
2000-06-23 02:28:31 +00:00
beard%netscape.com 585fef1917 putting the JSClass* in the current global scope, and looking up superclass rereferences. 2000-06-23 02:22:55 +00:00
rogerl%netscape.com 1a2c265dd0 Added support for 'debugger' as a statement. (Rob made me) 2000-06-23 00:08:10 +00:00
beard%netscape.com 0d1c72d6a6 JSClass support. 2000-06-21 23:58:17 +00:00
beard%netscape.com d193ec4ea0 initial checkin, starting on a representation for JS2 classes. 2000-06-21 23:57:09 +00:00
rogerl%netscape.com 3783f2c99e Work to support 'this'. 2000-06-21 22:32:21 +00:00
nboyd%atg.com 2640d85998 Fix javadoc warning 2000-06-21 15:49:14 +00:00
rogerl%netscape.com 0bb6f588ba Changed use of Register to TypedRegister throughout. 2000-06-20 22:45:45 +00:00
rogerl%netscape.com c23aa15cea Support for TypedRegister 2000-06-20 22:44:46 +00:00
pavel%gingerall.cz f21b6d3d1a - workaround of -rdynamic (JS_PERLCONNECT only) 2000-06-16 08:56:03 +00:00
brendan%mozilla.org b07fc1d1bb sfraser@netscape.com's fine GC_MARK_DEBUG enhancement for XPConnect. 2000-06-16 04:34:00 +00:00
rogerl%netscape.com a0ca8346b0 Added tests for scripts as strings. 2000-06-16 01:37:47 +00:00
rogerl%netscape.com 63047e7baf Mucking about with operator overlaoding plus initializing global context
- beginning type stuff.
2000-06-16 01:36:59 +00:00
rogerl%netscape.com c36f967be2 Fixed spelling. 2000-06-16 01:35:25 +00:00
rogerl%netscape.com 2e3359c741 Added op= support. 2000-06-15 16:03:54 +00:00
nboyd%atg.com 813e60ba07 Wrapping a class produces a NativeJavaClass. 2000-06-15 14:00:31 +00:00
rogerl%netscape.com 22b93140d6 Mark top-level execution as 'script' rather than function - to handle
vars correctly.
2000-06-14 23:28:38 +00:00
rogerl%netscape.com f32f769135 Added 'Function' instruction, plus suppresses class output if there is
no super specified. (ok it's a hack, but it works)
2000-06-14 23:27:28 +00:00
rogerl%netscape.com dae9b1607b Adding support for Functions and Vars, preXcrement, object literals. 2000-06-14 23:26:15 +00:00
nboyd%atg.com 94e1edf2e9 Fix bug 42097 2000-06-14 13:39:44 +00:00
pavel%gingerall.cz 34337bd829 - fixes in original version of perlconnect (JSVALToSV SVToJSVAL etc.)
- object delegation (like JSCreateObject) Perl->JS
- ParlValue handles PerlObject correctly
- undef values handled correctly (in both directions)
- JS arrays may be tied to perl arrays
- error handlers supported on Perl side
- no globals
- several minor fixes
2000-06-14 07:23:58 +00:00
pavel%gingerall.cz 122e709f36 - minor change of jsperl.h inclusion, matters for perlconnect build only 2000-06-14 07:18:41 +00:00
rginda%netscape.com b135be69a0 -- NOT PART OF THE BUILD --
Conditionally build lcshell w/ jdk 1.1.8 or 1.2.2 on windows
2000-06-14 00:14:56 +00:00
mkaply%us.ibm.com 739f68cd6d # 37239
r = mccabe, a = brendan
OS/2 bring-up - PR_CALLBACK for VisualAge
2000-06-14 00:07:08 +00:00
mccabe%netscape.com 9eeb8e5a67 First part of fix for 38495, support for exposing plugin methods to JavaScript.
This patch teaches XPConnected objects to look in their JavaScript __proto__ chain for any names they can't resolve themselves.  The rest of the fix to this bug sets the original DOM node object as the prototype of a new xpconnect-exposed plugin object, so javascript accesses will see names from both objects.

r=jst,brendan
a=beard
2000-06-13 23:18:21 +00:00
nboyd%atg.com a56f1e6373 Begin 1.5R2 effort.
Commit the following contributions:
* Andi Vajda's changes to allow embedders to capture the generated bytecode (and thus control
generated class names).
* Marshall Cline's changes to allow embedders to override the default Java object wrapping
behavior
* Kurt Westerfeld's change to handle calling static methods better
2000-06-13 14:33:54 +00:00
scc%mozilla.org 55650a35b3 fix type equivalence between |PRUnichar| and |jschar| now that |PRUnchar| may be |wchar_t| on select platforms 2000-06-12 23:52:31 +00:00
rogerl%netscape.com 76fb0716ce Added check for FORMAT characters in new unicode cr/lf handling code. 2000-06-12 17:56:05 +00:00
brendan%mozilla.org c01c46739f Comply with weird ECMA nit: call (o.f)() (note parens around the function expression) must bind 'this' to the global object, not to o\! (41864, r=shaver). 2000-06-08 06:46:18 +00:00
nboyd%atg.com 6d2408fa37 Fix formatting. 2000-06-07 14:51:08 +00:00
nboyd%atg.com 9cb3a95e5d Fix the following problem:
Subject:
        Odd behaviour on placement of .jar files?!
   Date:
        Mon, 05 Jun 2000 10:46:08 -0700
   From:
        John Raykowski <xski@xski.org>
     To:
        nboyd@atg.com




Hello,

I didn't want to post this directly as a rhino bug 'coz I think it may
be more of a JDK thing, but I thought I'd toss it to you as well.

The goal is to create a JavaScript object that implements a Java
interface. Straightforward enough and the example on the page using
ActionListener works without a hitch.  However, when I try to do the
same with my own interface, I get an error message: error instantiating
({0}): class {1} is interface or abstract (coming from
NativeJavaClass.construct).

Here's where it gets a bit strange.  Normally, I run with the jar files
in jre/lib/ext.  When I remove the rhino files from jre/lib/ext and
reference them explicitly on the commandline with the -cp option, it
works as expected and my script can implement the interface just fine.
Go figure.

Anyhoo, there ya go.  Like I said, I think its a JDK issue, but I
thought you'd be interested.  The attached zipfile contains a set of
sample code to demonstrate this problem.

Thanks heaps,

-jmr
2000-06-07 14:50:47 +00:00
brendan%mozilla.org 71d336d3a2 Use localizable error message for out of memory. 2000-06-06 04:54:04 +00:00
brendan%mozilla.org 254d95a427 Better fix, really (r=shaver for sure). 2000-06-06 04:41:05 +00:00
brendan%mozilla.org 53389789d1 Better control flow for catch clause code generation (r=shaver). 2000-06-06 04:27:37 +00:00
mccabe%netscape.com 95640360aa Fix to potential leak introduced with fix to 40406.
Be conservative in handling the lifetime of the safe context created by XPConnect to execute JS Components, and save it off to be destroyed at cleanup time, even if some other safe context is registered with XPConnect via SetSafeJSContext.

r=vishy, a=brendan
2000-06-06 00:01:25 +00:00
brendan%mozilla.org 25b2dee02f Fix missing $ bug when testing test_dir. 2000-06-03 19:20:03 +00:00
brendan%mozilla.org a6d231a46a Avoid zero-length malloc (and assertbotch) in array_sort, just return true early\! 2000-06-03 19:00:28 +00:00
warren%netscape.com 958ed96edd Renaming nsIAllocator to nsIMemory (and nsAllocator to nsMemory). API cleanup/freeze. Bug #18433 2000-06-03 09:46:12 +00:00
waldemar%netscape.com 2c96ad5323 Added parsing and printing of classes, interfaces, and namespaces 2000-06-02 04:35:44 +00:00
brendan%mozilla.org a9f1d30ada Fix ECMA DontDelete compliance problems, which create getter/setter security holes (40760, r=shaver). 2000-06-02 00:02:46 +00:00
nboyd%atg.com 5580e3ec96 Fix "in" operator for compiled mode. 2000-06-01 23:40:29 +00:00
nboyd%atg.com cce820de9c Add column number and line source information to the EcmaError object. 2000-06-01 17:30:28 +00:00
mkaply%us.ibm.com c99a5a0599 # 40177
r = leaf, a = brendan
Fix tab in makefile
2000-06-01 14:15:39 +00:00
waldemar%netscape.com 7812dc9a8e Widened default line width to 30 2000-06-01 03:31:17 +00:00
waldemar%netscape.com 4fc6a829b4 Added function and constructor parsing and printing; fixed printing of blocks, compound statements, and :: 2000-06-01 03:30:58 +00:00
waldemar%netscape.com 17668e8a07 Added two-argument linearBreak 2000-06-01 03:30:19 +00:00
brendan%mozilla.org fae789131e Use JS_ValueToId to go from user to internal property id, for integer-id optimality (40731, r=shaver). 2000-05-31 22:10:53 +00:00
brendan%mozilla.org 5cad625cd0 Make JS_ExecuteScriptPart call the debugger hooks (41066, r=MyNGs@HotMail.com). 2000-05-31 21:57:46 +00:00
nboyd%atg.com 156c349f5c check for null scope 2000-05-30 21:50:44 +00:00
nboyd%atg.com 52cdcf4338 Fix bug 40844 2000-05-29 16:57:13 +00:00
nboyd%atg.com b0072ff365 Fix bug 39906 2000-05-28 19:01:24 +00:00
nboyd%atg.com 9c618cc232 Remove tests obsoleted by the change that access to nonexistent properties of Java objects
returns undefined rather than causing an error
2000-05-28 18:50:58 +00:00
nboyd%atg.com 53971d9482 for Java methods, print the signatures of the overloaded methods in a comment when
the JavaScript function wrapper's toString method is called
2000-05-28 04:25:07 +00:00
brendan%mozilla.org eda440d4f6 Fix unreviewed changes made to fix 'Uninitialized variable compiler warnings'. 2000-05-28 00:02:26 +00:00
jst%netscape.com 1065a83626 Fixing bustage on solaris native builds. reported and reviewed by Tomi.Leppikangas@oulu.fi 2000-05-27 13:14:31 +00:00
edburns%acm.org 3d7b682c98 r=brendan
a=brendan
bug: 27362

This fix makes it so nsCLiveconnect.cpp doesn't #include
files within an extern "C" {} block.  To make this work, I
simply moved the extern "C" {} to the minimum necessary
range.  This required placing an "ifdef __cplusplus extern "C""
block in jsj_private.h, since nsCLiveconnect.cpp is the only
c++ file that includes jsj_private.h.
2000-05-27 01:12:40 +00:00
rogerl%netscape.com 6e0db88822 Removed old branches, changed offset printing to handle NULL operand. 2000-05-26 22:35:36 +00:00
rogerl%netscape.com 7535f22230 Update to new icg constructor etc. 2000-05-26 22:34:42 +00:00
rogerl%netscape.com a7d428fee6 Statement fun 2000-05-26 22:33:05 +00:00
waldemar%netscape.com fe2b190592 Added var, const, and for statements 2000-05-26 06:20:11 +00:00
shaver%mozilla.org d7e842a0c5 use NS_METHOD for register/unregister callback, for Win32 2000-05-26 05:55:00 +00:00
shaver%mozilla.org 5cab829a39 fix build bustage -- I'm an ass 2000-05-26 05:18:31 +00:00
shaver%mozilla.org c681e00cf1 remove useless nsIModule paste (#22922), add debug() for JS components, use categories for component loaders, XPCONNECT_STANDALONE (#39875), r=dp,waterson a=brendan 2000-05-26 04:56:23 +00:00
mkaply%us.ibm.com 2609bf3c3a # 34106
r = leaf, a = brendan
Mistake was made with an earlier makefile checkin - removing double definition of EXTRA_DSO_OPTS
2000-05-25 14:25:04 +00:00
mccabe%netscape.com c362ca7ae7 Fix the fix to 40406, fixing bustage.
Don't destroy the per-thread safe JS context on cleanup if that context was provided through the setter.

r=waterson
2000-05-25 08:33:53 +00:00
mccabe%netscape.com cb41d34427 Fix for 40406. Add setter to XPConnect to set default JS context used to execute JS components when no appropriate context can be found.
The setter changes per-thread data - for the DOM/UI thread, this means that we can set the JS Context to one with DOM magic.  This magic allows some DOM JS <-> XPConnect JS conversions to succeed, and in particular allows creation of a DOM window from within a JS component.

Unblocks nsbeta2 work by Vishy and Pavlov.

r=mccabe,vishy.  a=brendan,sleestack.
2000-05-24 22:54:57 +00:00
nboyd%atg.com 220fce4815 Add rhino9 and rhinoms9. 2000-05-24 18:10:55 +00:00
waldemar%netscape.com e5a692e62d Fixed case/default indenting 2000-05-24 02:18:57 +00:00
rogerl%netscape.com bbd7ed8e62 Codegen for statements. Blew off old statement API and most of the test
functions for now, sorry.
2000-05-24 02:11:39 +00:00
waldemar%netscape.com 01a830b36d Turned on statement parsing and printing 2000-05-24 01:51:32 +00:00
waldemar%netscape.com ef0a0075ca Added statement parsing 2000-05-24 01:51:20 +00:00
waldemar%netscape.com 2d2b4d1e40 Added using std::fmod declaration 2000-05-24 00:55:23 +00:00
waldemar%netscape.com 758d1aa2a0 Fixed Mac warning 2000-05-24 00:54:56 +00:00
waldemar%netscape.com ffe032b94e Fixed Mac warnings 2000-05-24 00:54:40 +00:00
waldemar%netscape.com 0409172259 Fixed syntax errors: can't use qualified names in class definitions, and 'not' is a C++ reserved word 2000-05-24 00:54:28 +00:00
nboyd%atg.com ab98d3b083 Remove unused constructor. 2000-05-23 21:03:50 +00:00
nboyd%atg.com 369ad1461c Fix up bug where direct calls were getting the parent scope when they shouldn't have,
resulting in a NullPointerException on the following code when run on the MS VM with -opt 9:

var testcases = getTestCases();

function getTestCases() {
    return new Boolean(new MyObject(true));
}

function MyObject( value ) {
    this.value = value;
    this.valueOf = new Function( "return this.value" );
    return this;
}
2000-05-23 20:59:13 +00:00
rginda%netscape.com 0fa9224054 apparently windows is too 2000-05-23 00:15:06 +00:00
rginda%netscape.com b8139b714f linux is so picky 2000-05-23 00:13:48 +00:00
rogerl%netscape.com bf553c65fb COMPARE_GT etc are gone. 2000-05-23 00:09:44 +00:00
rogerl%netscape.com 6c379c9539 Fall out from operator overloading. 2000-05-23 00:09:02 +00:00
rogerl%netscape.com 8bde6514f2 Added operator overloading support 2000-05-23 00:08:29 +00:00
rogerl%netscape.com 8ce92c9a4a Fix bug #39309 - parameters must be AnyType, also vars used before def. 2000-05-23 00:06:24 +00:00
rginda%netscape.com ab1f2aeef2 quieting linux warnings and fixing build bustage 2000-05-22 21:05:35 +00:00
nboyd%atg.com 0ff306b168 Fix formatting. 2000-05-22 03:03:37 +00:00
nboyd%atg.com d30c12731f Fix 38590. 2000-05-22 00:10:10 +00:00
cls%seawood.org 29367c81f1 More OS/2 changes. Batches 19 & 20 of Bug #34106 r=pavlov 2000-05-21 13:32:11 +00:00
brendan%mozilla.org c099365219 Fix remove-while-enumerating, beef up metering and add JS_DHashTableDumpMeter (these files are not part of the client build). 2000-05-20 18:42:22 +00:00
brendan%mozilla.org 31e48aabc5 Fix old stddev calc bug (#ifdef'd code, not part of build). 2000-05-20 18:41:13 +00:00
cls%seawood.org b129e998c9 Finishing off the standalone modules framework.
List js/src/liveconnect & js/src/xpconnect in toplevel Makefile.in to allow js to be built using the standalone framework.
Use the <module>_STANDALONE defines anytime BUILD_MODULES != all.
r=slamm
2000-05-20 02:45:59 +00:00
brendan%mozilla.org 3e2bb3db78 Use int for shift type consistently; optimize primary hash match (NOT PART OF BUILD). 2000-05-19 18:26:37 +00:00
rogerl%netscape.com 8b137399a7 Playing with operator overloading & Type types. 2000-05-19 17:41:10 +00:00
beard%netscape.com af00ce0353 fix const cast away linux breakage 2000-05-19 05:38:29 +00:00
brendan%mozilla.org 65a3d9575a Don't clear memory gratuitously (after create-error; after destroy). 2000-05-19 05:10:58 +00:00
brendan%mozilla.org 5873c77a22 Don't destroy what hasn't been created (NOT PART OF BUILD). 2000-05-19 03:49:32 +00:00
brendan%mozilla.org c7e55e24c1 Experimental double-hashing code, hope to donate to nsprpub/lib/ds (NOT PART OF BUILD). 2000-05-19 02:51:20 +00:00
mccabe%netscape.com 9dd8c20ce2 Patch xpcshell.cpp to not try to call JS_malloc with 0 bytes.
Patch courtesy Mark G. Adams <madams@livepage.com>

r=mccabe

This code is part of xpcshell, and doesn't go into the mozilla product.  Prior to this fix, xpcshell crashed on startup.
2000-05-19 00:34:46 +00:00
rogerl%netscape.com c4b6a652d5 Bunch o' expression ops. 2000-05-18 00:04:15 +00:00
rogerl%netscape.com 4ec5cba5d9 Moved genExpr to ICodeGenerator - added most expression ops. 2000-05-18 00:03:23 +00:00
rogerl%netscape.com ad5c33b8e4 Moved genExpr to ICodeGenerator 2000-05-18 00:01:33 +00:00
beard%netscape.com 168fd5eca2 added on run handler 2000-05-17 20:02:17 +00:00
beard%netscape.com e717dd2ca6 Removing obsolete project file. This is supplanted by js.mcp.xml. 2000-05-17 20:01:08 +00:00
cls%seawood.org 1165ad3a33 Mass replace of -lmozjs with $(MOZ_JS_LIBS) needed for OS/2 and consistency. 2000-05-17 06:45:45 +00:00
brendan%mozilla.org b428bdcc8f Include jsstddef.h first in all js*.c files (r=tlundeen@webcrossing.com). 2000-05-17 06:24:45 +00:00
brendan%mozilla.org 7ec8bd2b9d JS_DestroyRuntime nukes all contexts; add JS_G/SetRuntimePrivate (r=tlundeen@webcrossing.com). 2000-05-17 06:23:03 +00:00
pavlov%netscape.com 0c75802384 changes all usages of NS_NewTimer to CreateInstance 2000-05-17 02:49:35 +00:00
sfraser%netscape.com 758611a321 Fix to only broadcast to the autoreg observer if we are really registering. 2000-05-17 01:54:18 +00:00
mkaply%us.ibm.com 04f5a1c6d5 # 37239
r= rogerl
OS/2 bring up continues - fix for floating point trap
2000-05-16 22:51:12 +00:00
beard%netscape.com 351bd72f09 ensuring both arguments to max are the same type 2000-05-16 22:23:15 +00:00
rayw%netscape.com 1a08e06897 Added the fixes for 35866 and one older bug to the js component loader.
This means it is more careful about how it writes binary filenames in
the registry and it calls an observer to report autoregistrations.

This should have gone out with equivalent Native Component Loader fixes,
but it didn't.
2000-05-16 05:09:31 +00:00
cls%seawood.org 962f4851b8 Latest OS/2 makefile changes. Bug 34106. Batch 14, 15, & 16. 2000-05-16 04:41:54 +00:00
brendan%mozilla.org cde1ff4429 Fix GC request debiting to cope with multiple JSContexts on the same thread (39321, r=shaver). 2000-05-16 02:44:27 +00:00
rogerl%netscape.com 345804582d Bug #39034. Fixed stupid logic that broke \n, sorry. 2000-05-15 21:48:00 +00:00
brendan%mozilla.org 74b92d79e0 Common a string literal (js_call_str; r=shaver). 2000-05-15 20:21:05 +00:00
brendan%mozilla.org 11f2b967f5 Remove deadwood brought to my attention by tlundeen@webcrossing.com (r=shaver). 2000-05-15 20:04:41 +00:00
brendan%mozilla.org 66f16c7662 Fix stupid 0-for-enumerator-equal-to-0 warning (r=shaver). 2000-05-15 20:03:13 +00:00
mscott%netscape.com 681e89f874 backing out rayw's checkin because the tree WAS CLOSED! Shame on you =). 2000-05-15 18:07:36 +00:00
rayw%netscape.com 62565a9c19 I needed to add a better comment for the prior version I checked in.
Bug 3690, I added the native character writing / escaping logic to
the javascript components as it was added to native components.

r=dveditz
2000-05-15 17:29:20 +00:00
rayw%netscape.com bbea185af6 The remaining fix for international characters in component names. 2000-05-15 17:26:18 +00:00
brendan%mozilla.org 2cc44b24b1 Enforce interCaps Mozilla XPIDL style (r=shaver). 2000-05-15 07:03:46 +00:00
brendan%mozilla.org abe80212f1 Update JS_InitClass to match signature. 2000-05-15 06:07:10 +00:00
brendan%mozilla.org 77e3687daa Comment the need for rooted JS_NewScriptObject; whitespace/comment cleanup. 2000-05-15 06:06:12 +00:00
brendan%mozilla.org 96e08e9fe3 Cleanups from tlundeen@webcrossing.com, plus fun->call=>native renaming. 2000-05-15 03:54:50 +00:00
brendan%mozilla.org eaa1e364fe Forgot to check this in with the last batch! 2000-05-14 23:04:33 +00:00
brendan%mozilla.org 240be7a3b0 GC synchronization and lock fixes, plus comments (37983, r=waterson@netscape.com). 2000-05-14 23:00:51 +00:00
shaver%mozilla.org b6fe117b32 remove bogus CHECK_REQUEST in JS_ClearRegexpStatics (16128) 2000-05-14 15:38:04 +00:00
brendan%mozilla.org 2cdcef05eb Set newborn to root of object tree created by literal (followup to waterson nsJSEnvironment.cpp fix). 2000-05-14 05:38:51 +00:00
brendan%mozilla.org 19ff28a612 Avoid zero-length mallocs (prompted by ped@nospam.cadence.com). 2000-05-14 05:35:19 +00:00