2218 Commits

Author SHA1 Message Date
mccabe%netscape.com
0318df82ae Fix to 23532. Check validity of JS_ARENA_ALLOCATE call before using it as an argument of memcpy in JS_ArenaGrow.
Thanks to wyeung@real.com for noticing we were being unsafe here and suggesting the fix.


git-svn-id: svn://10.0.0.236/trunk@66692 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-21 09:25:43 +00:00
brendan%mozilla.org
a1e0219a1d Spruce up a couple of comments.
git-svn-id: svn://10.0.0.236/trunk@66642 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-21 01:49:49 +00:00
brendan%mozilla.org
50400ce9b5 Functions that use unqualified __parent__ or __proto__ must be heavyweight (36625, r=shaver).
git-svn-id: svn://10.0.0.236/trunk@66641 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-21 01:47:20 +00:00
rginda%netscape.com
bb75bc1957 Add nsIScriptError.idl. Build it here rather than back in xpfe/components/console.
Checkin by McCabe, on rginda's mac.


git-svn-id: svn://10.0.0.236/trunk@66621 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-21 00:57:27 +00:00
rogerl%netscape.com
55872f1c24 oops
git-svn-id: svn://10.0.0.236/trunk@66618 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-21 00:46:48 +00:00
rogerl%netscape.com
cf972ed7c0 Added labelled statements, fixed some VC++'isms
git-svn-id: svn://10.0.0.236/trunk@66617 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-21 00:37:51 +00:00
rginda%netscape.com
e7290871fc icodegenerator.cpp
add m prefix to base and offset label members

interpreter.cpp,h
dual license
wrap interpret in a Context class
add RETURN_VOID case

js2.cpp
update to use context class
remove #if 0 code that'll probably never be used anyway.

jstypes.h
add defineProperty/function to JSObject

vmtypes.h
regerated opcode classes:
  added RETURN_VOID, removed LOAD/SAVE_VAR
  reverted bacl to the smaller print function (thanks to RETURN_VOID)
  fixed branch printing issue
  inherit print() from super if possible

tools/gencode.pl
generate smaller print functions again
don't generate print function if superclass can take care of it.


git-svn-id: svn://10.0.0.236/trunk@66611 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-21 00:04:14 +00:00
norris%netscape.com
43bc21e458 Clean up new methods.
git-svn-id: svn://10.0.0.236/trunk@66598 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 23:08:07 +00:00
beard%netscape.com
c31b6beead Simple dependency tracking with make depend target.
git-svn-id: svn://10.0.0.236/trunk@66594 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 23:02:19 +00:00
rogerl%netscape.com
5c3e4646d4 Added ASSERT cases to FixNext child handling.
git-svn-id: svn://10.0.0.236/trunk@66592 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 23:00:37 +00:00
beard%netscape.com
caf86b0278 Simple dependencies list. Rebuilt with make depend target.
git-svn-id: svn://10.0.0.236/trunk@66586 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 22:58:23 +00:00
norris%netscape.com
9287db173c Fix build error.
git-svn-id: svn://10.0.0.236/trunk@66574 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 22:36:46 +00:00
norris%netscape.com
e40c972eba Subject:
contextClassloader problem in ScriptRuntime.java
   Date:
        Tue, 11 Apr 2000 09:45:36 -0400
   From:
        "Howard Lin" <howard@softcom.com>
     To:
        "Norris Boyd" <norris@netscape.com>
    CC:
        "Andrew Wason" <aw@softcom.com>




Hi, Norris, we are trying to create a Java class in JavaScript. When security manager is on, everything works fine. But when security
manager is off, we got an error saying the "... is not defined". The problem is that in ScriptRuntime.java, when security is on,
getContextClassLoader is null due to SecurityException and Class.forName is used to find the class, which works fine. When security
is off, ContextClassLoaderMethod is invoked to find the class. Since we use a separate thread to load third party jar files,
ContextClassLoaderMethod will throw a ClassNotFound exception.

To illustrate this problem, I wrote a simple applet, evaluating a simple js file in its paint method, which is running on a separate thread.
When security is off, I got the following:

ReferenceError: "Global" is not defined.
        at org.mozilla.javascript.NativeGlobal.constructError(NativeGlobal.java:
494)
        at org.mozilla.javascript.ScriptRuntime.name(ScriptRuntime.java, Compile
d Code)
        at org.mozilla.javascript.Interpreter.interpret(Interpreter.java, Compil
ed Code)
        at org.mozilla.javascript.InterpretedScript.call(InterpretedScript.java:
67)
        at org.mozilla.javascript.InterpretedScript.exec(InterpretedScript.java:
54)
        at org.mozilla.javascript.Context.evaluateReader(Context.java:739)
        at test.evaluate(test.java:26)
        at test.paint(test.java:16)
        at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:117)
        at java.awt.Component.dispatchEventImpl(Component.java:2447)
        at java.awt.Container.dispatchEventImpl(Container.java:1035)
        at java.awt.Component.dispatchEvent(Component.java:2307)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:287)
        at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:10
1)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:92)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:83)

When security is on, it runs fine. Or if the code moved to init method, it works fine regardless of security. We are using JDK 1.2.2.

Howard


git-svn-id: svn://10.0.0.236/trunk@66567 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 19:53:16 +00:00
jband%netscape.com
486fb4f510 Had the wrong clazz for the root! So it was better when the caching was broken. Now it works on MI objects with caching fixed. My bad copy/paste error from long ago.
git-svn-id: svn://10.0.0.236/trunk@66551 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 12:16:45 +00:00
jband%netscape.com
fe72a694dd backing out little fix from earlier today because it causes crashes in some MI cases. I'll investigate and do the right fix
git-svn-id: svn://10.0.0.236/trunk@66549 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 11:06:48 +00:00
brendan%mozilla.org
953de28629 Check access and redeclaration legality when defining a getter/setter (36117, r=norris)
git-svn-id: svn://10.0.0.236/trunk@66535 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 07:10:14 +00:00
beard%netscape.com
051398cca7 removed extraneous semi-colons after namespace declarations.
git-svn-id: svn://10.0.0.236/trunk@66532 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 06:20:31 +00:00
beard%netscape.com
a9070a5a89 warnings: commented out unused parameter name.
git-svn-id: svn://10.0.0.236/trunk@66531 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 06:19:43 +00:00
jband%netscape.com
b251c67df7 fix typo bug that was causing wrapper cache misses on wrapper around objects implementing multiple interfaces when the first wrapper is made for an interface that is not leftmost
git-svn-id: svn://10.0.0.236/trunk@66511 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-20 03:38:47 +00:00
norris%netscape.com
cedf1a3762 Add line number information.
git-svn-id: svn://10.0.0.236/trunk@66475 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-19 23:24:04 +00:00
rogerl%netscape.com
41b94e7563 Removing variables.
git-svn-id: svn://10.0.0.236/trunk@66472 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-19 22:45:57 +00:00
rogerl%netscape.com
c7b01f8cea Added hasOwnProperty, propertyIsEnumerable, isPrototypeOf to Object.
git-svn-id: svn://10.0.0.236/trunk@66471 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-19 22:32:50 +00:00
rogerl%netscape.com
f2e47face0 Began moving away from variables, fixed compare/branch ordering.
Testcases working.


git-svn-id: svn://10.0.0.236/trunk@66389 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-19 02:09:06 +00:00
scc%netscape.com
d2a7990448 making string conversions explicit
git-svn-id: svn://10.0.0.236/trunk@66364 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 23:53:10 +00:00
rginda%netscape.com
e400e4c1b0 formatting changes. use only one tab regardless of nested namespaces
git-svn-id: svn://10.0.0.236/trunk@66317 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 21:51:45 +00:00
norris%netscape.com
f69d357294 Add missing method for 1.4R3 compatibility.
git-svn-id: svn://10.0.0.236/trunk@66293 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 16:53:28 +00:00
norris%netscape.com
7569513f71 Fix bug where a bean property can conflict with a method name.
git-svn-id: svn://10.0.0.236/trunk@66292 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 16:52:00 +00:00
norris%netscape.com
13d51fccf7 Fix bug:
var a = Math.abs;
  a(-245);

  gets the following error :

  org.mozilla.javascript.EvaluatorException: Method "abs" called on
  incompatible object.


git-svn-id: svn://10.0.0.236/trunk@66291 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 16:34:36 +00:00
rginda%netscape.com
88784cab59 removed superfluous ;s after namespace decs.
git-svn-id: svn://10.0.0.236/trunk@66270 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 07:14:49 +00:00
rginda%netscape.com
544236f78a regenerated opcode classes after grncode.pl changes
git-svn-id: svn://10.0.0.236/trunk@66268 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 07:06:25 +00:00
rginda%netscape.com
a9d2177159 modified to print R~ if NotARegister
git-svn-id: svn://10.0.0.236/trunk@66267 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 07:04:24 +00:00
dp%netscape.com
4e89ce53af Implemented component unregister.
git-svn-id: svn://10.0.0.236/trunk@66252 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 05:26:40 +00:00
mccabe%netscape.com
adf9593bd0 added files: mozilla/js/src/xpconnect/src/nsScriptError.cpp
git-svn-id: svn://10.0.0.236/trunk@66234 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 02:35:06 +00:00
mccabe%netscape.com
dd8d16945e Move nsIConsoleService and implementation into xpcom/base, and nsIScriptError and implementation into js/src/xpconnect. (A place for JavaScript-specific XPCOM would be better, but xpconnect will do).
git-svn-id: svn://10.0.0.236/trunk@66233 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 02:34:54 +00:00
rogerl%netscape.com
debf86a7a6 added '(' for RegisterList output
git-svn-id: svn://10.0.0.236/trunk@66227 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 01:46:32 +00:00
rginda%netscape.com
3143f7a0fc regenerated opcodenames to include padding, added label printing back into icg::print
git-svn-id: svn://10.0.0.236/trunk@66226 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 01:31:24 +00:00
rginda%netscape.com
acf83b07ec space out opcodenames array
git-svn-id: svn://10.0.0.236/trunk@66223 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 01:19:12 +00:00
beard%netscape.com
a24bcda5a6 std::pair
git-svn-id: svn://10.0.0.236/trunk@66222 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:52:07 +00:00
beard%netscape.com
7d9d64236f moved initConsole() out to :: namespace.
git-svn-id: svn://10.0.0.236/trunk@66221 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:51:53 +00:00
beard%netscape.com
4545220c24 added vmtypes.h,.cpp
git-svn-id: svn://10.0.0.236/trunk@66220 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:50:58 +00:00
rogerl%netscape.com
46eb804c04 added vmtypes/jstypes
git-svn-id: svn://10.0.0.236/trunk@66219 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:46:18 +00:00
rogerl%netscape.com
1bfac2ec9e Fixed WINDOZE build issues
git-svn-id: svn://10.0.0.236/trunk@66218 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:38:26 +00:00
rginda%netscape.com
9a35e0f5df initial add of perl script to generate icode classes
git-svn-id: svn://10.0.0.236/trunk@66217 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:22:51 +00:00
rginda%netscape.com
825a9c7f3c removing bogus file
git-svn-id: svn://10.0.0.236/trunk@66216 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:20:10 +00:00
rginda%netscape.com
831390e752 adding files for namespace change
git-svn-id: svn://10.0.0.236/trunk@66215 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:19:09 +00:00
rginda%netscape.com
570245f757 added js::VM, ICG, JSTypes, and Interpreter namespaces; messed around with lots of code.
Created class for each ICode, adding a print() method (using formatters)


git-svn-id: svn://10.0.0.236/trunk@66214 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-18 00:17:34 +00:00
beard%netscape.com
5366b9a5af FASTLOCK changes.
git-svn-id: svn://10.0.0.236/trunk@66212 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-17 23:58:28 +00:00
braddr%puremagic.com
e185fff9bb Implicit types are evil. Add PRUint32.
r=mccabe


git-svn-id: svn://10.0.0.236/trunk@66110 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-16 00:21:07 +00:00
jband%netscape.com
4826209b80 add a test with an 'out' array of strings
git-svn-id: svn://10.0.0.236/trunk@66096 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-15 18:44:22 +00:00
mccabe%netscape.com
31bd0337ce Print error diagnostics to stderr even when non-debug, to support those folks
that want to debug with the -console flag.


git-svn-id: svn://10.0.0.236/trunk@66075 18797224-902f-48f8-a5cc-f745e15eee43
2000-04-15 06:59:21 +00:00