Commit Graph

417 Commits

Author SHA1 Message Date
fur%netscape.com
a3c65849c2 When finalizing the prototype objects, don't try to access the JNIEnv, since that can cause the JVM to be unnecessarily loaded 1998-09-23 18:36:38 +00:00
bjorn%netscape.com
92dd15691d Patched the name JS_USE_ONLY_NSPR_LOCKS. 1998-09-22 21:45:13 +00:00
wtc%netscape.com
96a6a02078 NO_NSPR_PRIVATE_HEADER_BRANCH landing. Removed the inclusions of
private NSPR headers (prosdep.h and primpl.h) from the Mozilla source.
The part of prosdep.h that is actually needed by Mozilla was extracted
and put in the new file mozilla/include/xp_path.h.
1998-09-22 16:59:57 +00:00
fur%netscape.com
f88cf62f00 First Checked In. 1998-09-22 03:07:13 +00:00
beard%netscape.com
64ea2e0c0f Turned off registering the native methods that are now installed by the plugin. 1998-09-22 02:29:36 +00:00
beard%netscape.com
dd37b82b9a Changed all interfaces to use UNICODE strings, changed some ints to jints. 1998-09-22 02:24:56 +00:00
beard%netscape.com
dabecf7bc1 Added netscape_javascript_JSObject.h. 1998-09-22 02:23:44 +00:00
matt%netscape.com
34b612cd1e Adding mak file for HP-UXB.10.20 1998-09-22 02:13:56 +00:00
norris%netscape.com
a8d7c15011 Fix bug 323696 "js12: unimplemented bytecode error in switch test"
Rename js_ResetCodeGenerator to js_FinishCodeGenerator to indicate that
js_InitCodeGenerator must be called after finish before it can be reused.
1998-09-21 17:17:26 +00:00
brendan%netscape.com
13c7230b4c Fix last checkin. 1998-09-20 02:58:41 +00:00
norris%netscape.com
b7d8575ca7 Remove ECMA v2 versioning since v2 is far from settled and we don't know which JavaScript version will implement it. 1998-09-18 20:40:35 +00:00
norris%netscape.com
9fb6ef3b59 Update version number and release date. Use the date of our next customer drop. 1998-09-18 20:35:09 +00:00
rogerl%netscape.com
9a27ef1b9d Bug #315139 (aka 104859). Some discrepancies between JS1.2 behaviour for
matching at empty pattern at end of string. I'm not real confident of
this fix since it removes code that seems to explicitly address the issue,
but it does fix the bug.
1998-09-18 20:22:59 +00:00
rogerl%netscape.com
9f60232a23 Bug #316839. Re-allocation of space for flat1/flat coalesce wasn't using
sizeof(jschar).
1998-09-18 20:20:53 +00:00
jband%netscape.com
dcca610736 (not part of client build) added short description to each source file 1998-09-18 19:56:45 +00:00
fur%netscape.com
f52527ce5d We decided not to create mini-NSPR 1998-09-18 18:09:26 +00:00
sudu%netscape.com
12577f0abd Removed dependancy on caps/oji plugin stuff in building liveconnect 1998-09-18 02:28:50 +00:00
warren%netscape.com
e739973a4a Abstracted away need for JavaVM object and GetJavaVM plugin API call. 1998-09-18 01:29:08 +00:00
jband%netscape.com
238f96eccb (not part of client build) added call/return hooks to js_Invoke and js_Execute. Also added additional accessors to jsdbgapi for JSStackFrame contents. This will better facilitate tracking exceptions as they propagate up the stack, allow for faster stepping schemes, and support less intrusive tracing/profiling schemes. 1998-09-18 00:57:11 +00:00
mccabe%netscape.com
8257eac38e Propagate mcafee compile-warning fixes from js/src. 1998-09-17 23:48:20 +00:00
beard%netscape.com
8785f1659c 09171998 LiveConnect Carpool 1998-09-17 20:41:00 +00:00
sudu%netscape.com
6eada553e3 including config.mak to get default MOZ_OJI flag being set in config 1998-09-17 19:22:38 +00:00
beard%netscape.com
3b0249a287 09171998 LiveConnect Carpool 1998-09-17 19:20:20 +00:00
sudu%netscape.com
27a8da36c2 removed c++ style comments 1998-09-17 19:06:00 +00:00
sudu%netscape.com
8d00de7ede Included confg.mk so that MOZ_OJI flag gets picked up from there. Else liveonnect dir would not be traversed 1998-09-17 18:35:15 +00:00
sudu%netscape.com
1de8c0fe1f Added new XPCOM apis to liveconnect 1998-09-17 18:21:49 +00:00
sudu%netscape.com
3e35efee72 removing jni files which were placed by mistake in _jri dir 1998-09-17 18:18:16 +00:00
sudu%netscape.com
cdabeaacce Resurrecting the files which were placed in wrong dir _jri 1998-09-17 18:17:04 +00:00
sudu%netscape.com
ace5839c75 New xpcom liveconnect apis 1998-09-17 18:13:55 +00:00
jband%netscape.com
b1ecdebd65 (not part of client build) moving to mozilla from jsdse_branch of ns/js/jsd/corba. This code constitutes the server side of the Corba/iiop based remote JavaScript debugging system. There is not currently a build system for the C++ code in place 1998-09-16 22:24:00 +00:00
jband%netscape.com
2de73cf99d (not part of client build) added single makefile controlled switchpoint using awk generated Java source file for ASSERT and DEBUG in ifcui 1998-09-16 19:04:53 +00:00
mcafee%netscape.com
e7203838d4 Uninitialized variable compiler warnings on Linux 1998-09-16 06:54:49 +00:00
mcafee%netscape.com
ac773fc082 Uninitialized variable compiler warnings on Linux 1998-09-16 05:16:58 +00:00
jband%netscape.com
74b712789c (not part of client build) initial checkin of mozilla/js/jsdj (migrated from ns/js/jsdj) 1998-09-16 02:07:50 +00:00
jband%netscape.com
2a81c18a1a (not EVEN part of mozilla) fix conditional compile code to allow use of debugger without liveconnect 1998-09-16 00:56:47 +00:00
ccooper%netscape.com
2cef6d00a9 Added NPL to LiveConnect java classes.
New file 'JSWrappedException' is used for passing exceptions between Java
and JavaScript.
1998-09-15 19:53:48 +00:00
rogerl%netscape.com
46f5ffb26f Fixed bug #316293; when break was very first statement in a loop it wasn't
getting patched and so looped for ever.
1998-09-14 22:33:19 +00:00
norris%netscape.com
19a2523b04 Fix 179417 "crash in with tests with with object"
The problem was that when "w=With()" is executed, the new object "w" is created
such that it shares a scope with Object.prototype. When GC runs and
Object.prototype and "w" are both collected, the test in js_DropObjectMap
currently looks like

     if (MAP_IS_NATIVE(map) && ((JSScope *)map)->object == obj)
        ((JSScope *)map)->object = NULL;

The problem is that MAP_IS_NATIVE is false because the object ops are special
for the With object. Thus map->object is left nonnull and when "w" is collected,
it tries to drop its scope, which causes map->object to be referenced, causing
the null dereference.

Update MAP_IS_NATIVE to include With objects as well.
1998-09-14 22:01:01 +00:00
jband%netscape.com
2fb80359da added CRT_CALL decoration to callback typedefs in jsprvtd.h (it had only been used in jspubtd.h) and moved the last remaining callback typedef (JSTrapHandler) out of jsdbgapi.h and into jsprvtd.h along with the others 1998-09-11 19:58:15 +00:00
brendan%netscape.com
f1dc01ae5b - Fix js_AllocTryNotes to track how much space has been allocated from tempPool
for trynotes in the current code generator, and grow that space as needed.
- Avoid dividing by a multiple of 3 (JSTryNote is 3 ptrdiff_t's) via (char *)
  arithmetic.
1998-09-11 09:25:15 +00:00
jband%netscape.com
98c507c676 (not part of mozilla build) added source hook to jsdbgapi so that debugger can get clean access to source from jsscan when the JSFILE hack is used 1998-09-11 04:04:26 +00:00
brendan%netscape.com
7e8d72f13f Don't CHECK_BRANCH(len) in GOSUB (len must be > 0) or at all in RETSUB. 1998-09-10 20:46:37 +00:00
brendan%netscape.com
47030e2d0d - GOSUB pushes the next pc after it, not its own pc (tradition!) and RETSUB
sets pc to the unbiased result of the pop.
- Use #if JS_HAS_EXCEPTIONS in the decompiler, fiddle similar cosmetic stuff.
1998-09-10 20:42:26 +00:00
norris%netscape.com
c7e0b4fd28 Fix 312954 "monkey: on HPUX, special case failure when dividing by -0" 1998-09-10 20:27:16 +00:00
brendan%netscape.com
0b411ad632 - Added commentary for TOK_DEFSHARP nodes explaining pn_kid's purpose.
- Don't over-commend nearby #endifs at the expense of legibility.
1998-09-10 20:13:06 +00:00
brendan%netscape.com
123e68fe7a - Use JSBool for MatchChar's return type and values.
- Spacing nits.
1998-09-10 19:58:15 +00:00
brendan%netscape.com
a8df12702b Remove excessive JS_FRIEND_API uses; clean up nits. 1998-09-10 19:18:23 +00:00
shaver%netscape.com
92bca3301d clean up old assertions and remove vestigial tryLimit 1998-09-10 17:45:37 +00:00
shaver%netscape.com
23b7327ace fix memory leak 1998-09-10 14:56:58 +00:00
brendan%netscape.com
fa72057162 Need to prevent GC activation during compile on the compiling context, not
just when evaluating old-style switch case expressions.
1998-09-10 07:09:44 +00:00
brendan%netscape.com
c3830fe4eb Remove javaData, left over from original LiveConnect. 1998-09-09 19:20:07 +00:00
brendan%netscape.com
9b12b81ef6 Now that SRC_COMMA has been renamed to reflect its generality (SRC_PCDELTA),
and more important, to save a byte of useless note offset, use SRC_CONTINUE
instead of SRC_PCDELTA to annotate JSOP_ENDINIT when there's an extra comma
at the end of an array literal (e.g. [1,2,,]).
1998-09-09 19:18:01 +00:00
brendan%netscape.com
cacf641709 - Might as well use tempPool to arena-allocate collected_args as well as the
tokenstream in Function, to avoid calling malloc at all.
- But do check for malloc failure under PR_ARENA_ALLOCATE (the old call to
  JS_malloc was unchecked).
1998-09-09 10:02:12 +00:00
brendan%netscape.com
0b351f4c23 Fix tempPool bloat bugs in Function by mark/release around NewTokenStream. 1998-09-09 09:50:40 +00:00
brendan%netscape.com
1cf65e15ec - Don't cast malloc's return value, it's void *.
- Don't double-report a scanner error such as illegal character in
  Function("a@b", "return a*b")
- Do report a "malformed formal parameter" error in
  Function("a,b,", "return a*b")
- Fiddle comments to more precisely rule out the above bugs.
1998-09-09 09:27:56 +00:00
brendan%netscape.com
89c7bdee13 JSMSG_NO_FORMAL duplicated DUPLICATE_FORMAL, now is reborn as BAD_FORMAL. 1998-09-09 09:04:35 +00:00
brendan%netscape.com
a95987dd0b Improve TABLESWITCH comment precision and add XXX about JSVERSION_IS_ECMAv2. 1998-09-09 06:35:30 +00:00
brendan%netscape.com
0ef0c706ae Renamed SRC_COMMA to SRC_PCDELTA and fixed related comments. 1998-09-09 02:16:19 +00:00
brendan%netscape.com
6327319e0d Fix busted version check in JSOP_TABLESWITCH. 1998-09-09 02:01:52 +00:00
shaver%netscape.com
2e4590ec47 ToBoolean behaviour for all non-ECMA versions, not just 1.2 1998-09-08 20:59:19 +00:00
beard%netscape.com
53ad88baba Changed JavaPackage_resolve, to remove a memory leak. 1998-09-08 19:08:09 +00:00
brendan%netscape.com
89d641ff37 Don't emit two SRC_HIDDENs in a row. 1998-09-08 18:26:37 +00:00
norris%netscape.com
c6b299a84d Fix bug: space was not allocated for terminal '\0' in string.
Spell "JavaScript" correctly.
1998-09-08 18:18:52 +00:00
brendan%netscape.com
aeb3f1e6b9 Oops! How did that ever work on my Win32 build? 1998-09-08 05:49:12 +00:00
brendan%netscape.com
347aaac8d3 js.c jsemit.c jsemit.h jsgc.c jsinterp.c jsopcode.c jsopcode.def
- Switch improvements:
  - JSOP_CONDSWITCH is a 1 byte nop, not variable length with the same kind
    of immediate operand as JSOP_LOOKUPSWITCH (which is useless except for
    decompilation).  New scheme uses SRC_COMMA notes on each JSOP_CASE opcode,
    usually 2 bytes per note, and a typically-1-byte 2nd offset on SRC_SWITCH:
      1 + 2 * ncases
    vs. the previous JSOP_LOOKUPSWITCH immediate, which consumed:
      4 * ncases
    bytes after the switch opcode just for decompilation.
  - SRC_SWITCH has two offsets, first to end of switch as before, the second
    to first case if JSOP_CONDSWITCH, for decompilation.
  - Optimize switches with all-constant cases using JSOP_TABLESWITH, or if
    that can't be used, JSOP_LOOKUPSWITCH, before falling back on ECMAv2's
    JSOP_CONDSWITCH.
  - Use cx->gcDisabled when evaluating case exprs at compile time for old,
    pre-ECMAv2 switches, to prevent branch-callback-based GC invocations
    from ripping apart the unrooted temporary script for each case expr.
  - Fixed up stale SRC_SWITCH comments in jsemit.h.

jsemit.c jsemit.h
  - TREE_CONTEXT_INIT to match ATOM_LIST_INIT, not English word order.
  - Reorganized JSCodeGenerator to sort of match argument order to
    js_InitCodeGenerator.
  - Got rid of confusing CG_RESET* macros and used memset(cg, 0, sizeof *cg)
    and non-zero-default init in js_InitCodeGenerator.  js_ResetCodeGenerator
    just releases the code and temp arena pools and leaves the cg in a state
    where it must be re-initialized (as before, but more obvious).
  - In the same spirit, don't do partial "resets" or src and trynotes in their
    js_FinishTaking*Notes functions -- those are friends of jsscript.c and are
    not general, idempotent functions.

jsapi.c jsapi.h jsarray.c jsatom.c jsatom.h jscntxt.c jsemit.c jsmsg.def
jsnum.c jsobj.c jsopcode.c jsregexp.c jsscan.c jsstr.c jsxdrapi.
  - Use PR_snprintf rather than sprintf always, so we don't have to worry
    about systems with 64-bit longs that overflow 12-byte buffers and open
    Morris-Worm-type security holes.
  - Trim extra spaces, fix hanging indentation, and similar anal retention.
  - Renamed JSMSG_BAD_PROTO_SORT to JSMSG_BAD_SORT_ARG cuz that's what it
    is complaining about.
  - SRC_CATCHGUARD still lived in comments, but it's SRC_CATCH in code.

jscntxt.c jscntxt.h jsinterp.c
  - Packed nearby JSPackedBools and added a new one: gcDisabled, for use by
    jsemit.c's pre-ECMAv2 switch case expr eval.
  - Rip out old js_InterpreterHooks stuff from original liveconnect (moja).
  - Remove javaData and savedErrors from JSContext.  Leaving it to fur or
    shaver to remove javaData from jsscript.h.
1998-09-08 05:39:51 +00:00
brendan%netscape.com
9d404730f1 Remove '(balance' comments, fix hanging indents, other nits. 1998-09-06 19:23:06 +00:00
brendan%netscape.com
93281b559a Fix switch comments, it's not a ternary node any longer. 1998-09-06 19:19:04 +00:00
brendan%netscape.com
310fe6513e - Use consistent spelling in the API: "Callback" not "CallBack" -- it's a one
word neologism, not two words.
- Use consistent neighboring terseness ("error" rather than "err" in intercaps
  identifiers).
- Don't leave pointers in JSErrorReport to freed memory if bailing on OOM in
  jscntxt.c:js_ExpandErrorArguments.
- Hanging indentation, code fusion via continue, and other misc. cleanups.
1998-09-06 08:07:35 +00:00
bjorn%netscape.com
a66b0a3f70 Added a missing read in ArenaAllocate. 1998-09-05 00:36:14 +00:00
bjorn%netscape.com
28404ccc8f Locks with almost no global locking. This will relieve contention. 1998-09-05 00:34:03 +00:00
shaver%netscape.com
9756611cdc fix ifdef breakage 1998-09-04 18:48:16 +00:00
norris%netscape.com
9ff1d1f26d Previous checkin was mistaken; back it out. 1998-09-04 00:47:22 +00:00
norris%netscape.com
984ac268fd Add support for ECMA switch statements. These are like LISP cond in that they
evaluate the case label each time.
Still to do is to optimize so that TABLESWITCH and LOOKUPSWITCH are created
when possible.
1998-09-04 00:45:21 +00:00
rogerl%netscape.com
801d3e6ac9 Removed redundant #undef 1998-09-03 22:50:55 +00:00
cyeh%netscape.com
4379809e93 remove JSJDebug.o and JSJ.o files from all targets. also turn modification date caching off to fix dependencies not working 1998-09-03 20:53:27 +00:00
rogerl%netscape.com
4c0b7cffd9 New errorNumber handling.
Fixed bug #317398, for loop without condition wasn't decompiling the body
correctly since the first statement in that body was getting eaten by
mistake when trying to consume the condition expression.
1998-09-03 20:44:55 +00:00
rogerl%netscape.com
f4649b191c New errorNumber handling 1998-09-03 20:35:41 +00:00
rogerl%netscape.com
474bde20c3 New break-out of error message text from core engine 1998-09-03 20:33:32 +00:00
rogerl%netscape.com
6b0757f6fe New errorNumber handling 1998-09-03 20:29:37 +00:00
fur%netscape.com
bdab8cdd7b Backing out check-in of these files that are causing pain with Mozilla builds,
at least until we can properly control search paths on the Mac.
1998-09-03 07:28:30 +00:00
cyeh%netscape.com
a3449255d5 re-arranged search path so that :dist is searched before the local project folder. 1998-09-03 05:01:40 +00:00
fur%netscape.com
5e80fa90d7 Added Mac-specific defines. 1998-09-03 03:52:13 +00:00
fur%netscape.com
18dd63c61f *** empty log message *** 1998-09-03 03:51:38 +00:00
fur%netscape.com
97a8da12c8 Ignore generated files 1998-09-03 03:47:13 +00:00
fur%netscape.com
7640690581 Checked in wrong version of project by mistake. This is the right one. 1998-09-03 03:46:25 +00:00
fur%netscape.com
cafc3c054c Added comments and declaration of PR_Abort(). 1998-09-03 03:40:50 +00:00
fur%netscape.com
5927643e70 Project files to build standalone JS using mini-NSPR 1998-09-02 22:38:20 +00:00
fur%netscape.com
21b788956e Minimal NSPR subset required to build JS engine 1998-09-02 22:37:14 +00:00
fur%netscape.com
b73da9e0ca ignore generated files 1998-09-02 22:36:05 +00:00
mccabe%netscape.com
30521bb1b0 Further exception work - added 'message' to the js_ErrorToException
call, and experimented with copying the original JSErrorReport into
private data.  Much of this to support a toString method for exception
objects.

It's not polished, but I wanted to get toString available quickly.
1998-09-02 20:01:34 +00:00
mccabe%netscape.com
5569d89bd7 Another platform!
Thanks go to Marc Fraioli <fraioli@dg-rtp.dg.com> for
the initial port of the js/ref standalone javascript
engine to DG/UX.
1998-09-02 08:19:31 +00:00
mccabe%netscape.com
f9f7609482 Fixes for NetBSD and OpenBSD.
Thanks Marco S Hyman <marc@snafu.org>.
1998-09-02 07:56:50 +00:00
bjorn%netscape.com
501ca3dfad Added compare-and-swap patches for AIX (_check_lock) and Solaris (stbar). 1998-09-01 20:21:11 +00:00
shaver%netscape.com
a6a11ab6e9 if throwing, cx->exception is a valid root 1998-09-01 12:38:59 +00:00
mccabe%netscape.com
7505b29f0e restore npl. 1998-09-01 01:16:45 +00:00
mccabe%netscape.com
45051d3191 More runtime errors now bound to exceptions.
Most of these will require a second look, but I wanted to get all of
them (that need exceptions) throwing something interesting.
1998-09-01 01:15:16 +00:00
beard%netscape.com
811374c6e8 The equals method isn't native in the Mozilla tree. 1998-08-31 23:39:51 +00:00
beard%netscape.com
603876aec5 Changed JavaPackage_resolve so that it doesn't return immediately if quiet_resolve_failure is true. Otherwise, pre_define_java_packages fails. 1998-08-31 23:39:04 +00:00
warren%netscape.com
f20a6b1050 Added jsj_JavaMember.c (Changes from SpiderMonkey131_BRANCH of js/ref/liveconnect.) 1998-08-31 20:17:31 +00:00
beard%netscape.com
35cb9e3602 Changes from SpiderMonkey131_BRANCH of ns/ref/liveconnect. 1998-08-31 20:15:32 +00:00