Commit Graph

76551 Commits

Author SHA1 Message Date
sspitzer%netscape.com
2aab18fb0a NOT PART OF THE BUILD. more hacking with bienvenu. 2001-02-08 22:02:48 +00:00
rginda%netscape.com
43a1235c75 Turn on RTTI 2001-02-08 21:48:19 +00:00
rginda%netscape.com
b219c01b86 Adding windows build goop for the tests 2001-02-08 21:38:52 +00:00
waterson%netscape.com
a964382ebd Bug 67900. Unitialized bare pointer with nsCOMPtr, avoiding crash if GetElementResource() fails, and fixing a leak to boot. r=scottip,rjesup; sr=alecf; a=blizzard 2001-02-08 21:25:13 +00:00
rginda%netscape.com
31b6ee0ac8 Changes to get the lib building in vcc 2001-02-08 21:13:16 +00:00
pinkerton%netscape.com
0e10555210 Backout of 30841 to fix menus not going away when clicking in the title bar
r=pink/sr=hyatt/a=asa
2001-02-08 21:06:43 +00:00
rginda%netscape.com
54ddb30990 ok, let's try that again. 2001-02-08 21:04:06 +00:00
rginda%netscape.com
0b6511d8b3 Changed vc build to make a library instead of an exe 2001-02-08 20:56:56 +00:00
blizzard%redhat.com
90d96ec1d7 Fix bug #68057. Track visibility changes so that windows opened via window.open() actually open properly. 2001-02-08 20:12:13 +00:00
nboyd%atg.com
82bd85bfce Fix for problem:
Subject:
             Rhino Exception Handling: Inconsistency btw Old/New Versions of 1.5
        Date:
             Mon, 05 Feb 2001 06:07:07 -0800
       From:
             Timothy Bergeron <bergeron@resumerabbit.com>
 Organization:
             Another Netscape Collabra Server User
 Newsgroups:
             netscape.public.mozilla.jseng




I've been using Rhino for about a year with almost no problems. However,
I downloaded the latest Rhino tip (rhino15R2pre) and discovered a
significant difference in exception handling.

I rely heavily on JavaScript code like the following:

try {
   var em  = new ExceptionMaker();
   em.npe();  // method throws a java.lang.NullPointerException
   //em.ae();  // method throws a Packages.AutomationException
}
catch (e if (e instanceof java.lang.NullPointerException)) {
   java.lang.System.out.println("Caught a NullPointerException");
   e.printStackTrace();
}
catch (e if (e instanceof Packages.AutomationException)) {
   java.lang.System.out.println("Caught an AutomationException");
}
catch (e) {
   java.lang.System.out.println("Caught an unexpected exception: "+e);
}
finally {
   java.lang.System.out.println("Finally!");
}

Previous Rhino versions worked as expected. The exception thrown from
within the host object would be caught and the appropriate actions could
be taken.

With the most recent tip, the thrown exceptions simply are not caught
within the JavaScript. They propagate back to the Java function invoking
the (in my case) Context.evaluateReader() method.

Running the above JS fragement with the older tip displayed the
following stack trace (when the NullPointerException was caught):

Rhino Version: JavaScript-Java 1.5 release 1 2000 03 15
Caught a NullPointerException
java.lang.NullPointerException
        at java.lang.Throwable.<init>(Throwable.java:84)
        at java.lang.Exception.<init>(Exception.java:35)
        at java.lang.RuntimeException.<init>(RuntimeException.java:39)
        at
java.lang.NullPointerException.<init>(NullPointerException.java:45)
        at ExceptionMaker.jsFunction_npe(ExceptionMaker.java:13)
        at java.lang.reflect.Method.invoke(Native Method)
        at
org.mozilla.javascript.FunctionObject.call(FunctionObject.java:497)
        at
org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1205)
        at org.mozilla.javascript.gen.c1.call(exception.js:3)
        at org.mozilla.javascript.gen.c1.exec(exception.js)
        at
org.mozilla.javascript.Context.evaluateReader(Context.java:739)
        at js.main(js.java:14)
Finally!

When run with the latest tip, the output is:

Rhino Version: JavaScript-Java 1.5 release 1 2000 03
15                                          Finally!
Exception in thread "main" java.lang.NullPointerException
        at java.lang.Throwable.<init>(Throwable.java:84)
        at java.lang.Exception.<init>(Exception.java:35)
        at java.lang.RuntimeException.<init>(RuntimeException.java:39)
        at
java.lang.NullPointerException.<init>(NullPointerException.java:45)
        at ExceptionMaker.jsFunction_npe(ExceptionMaker.java:13)
        at inv2.invoke()
        at
org.mozilla.javascript.FunctionObject.doInvoke(FunctionObject.java:843)
        at
org.mozilla.javascript.FunctionObject.call(FunctionObject.java:486)
        at
org.mozilla.javascript.ScriptRuntime.call(ScriptRuntime.java:1199)
        at org.mozilla.javascript.gen.c1.call(Unknown Source)
        at org.mozilla.javascript.gen.c1.exec(Unknown Source)
        at
org.mozilla.javascript.Context.evaluateReader(Context.java:778)
        at js.main(js.java:14)

Curiously, both Rhino versions seem to be returning the same string from
Context.getImplementionVerison();

Anyway, the results from the two runs are clearly different: In the
first case, the exception is thown, the correct catch block is invoked
(hence the stace trace), and the finally block is invoked. In the second
case, the exception is thrown, the finally block is invoked, and the
exception is handled by the calling Java method rather than being
handled by the JavaScript code.

After some research, it appears this change was introducted by a
modification to FunctionObject.call()  (See
http://bugzilla.mozilla.org/show_bug.cgi?id=64788) which used to have:

       try {
            Object result = (method != null)
                            ? method.invoke(thisObj, invokeArgs)
                            : ctor.newInstance(invokeArgs);
            return hasVoidReturn ? Undefined.instance : result;
        }

but now has:

            Object result = method == null ?
ctor.newInstance(invokeArgs)
                                           : doInvoke(thisObj,
invokeArgs);

If I comment out the new code and replace it with the old, the expected
exception handling returns. Is this just an oversight or the new
expected behavior? Are there any negative side effects (other then the
speed decrease in method invocation) if I use the latest tip but use the
old method invocation procedure in FunctionObject.call() rather than the
new?
2001-02-08 18:56:58 +00:00
bienvenu%netscape.com
5cf8693a6e more work on db view NOT PART OF BUILD 2001-02-08 17:46:54 +00:00
sspitzer%netscape.com
1f195e3bf5 fix for #68031.
select all (in an empty thread pane) crashes.
sr=hyatt,brendan a=asa
2001-02-08 17:30:17 +00:00
waterson%netscape.com
0991df1320 Add brendan's js regexp fu. 2001-02-08 06:45:38 +00:00
waterson%netscape.com
74091d7f2d Add support for regexps. 2001-02-08 06:45:29 +00:00
sspitzer%netscape.com
a6bebf95dd NOT PART OF THE BUILD. 2001-02-08 06:18:32 +00:00
sspitzer%netscape.com
1ccc1a5f01 NOT PART OF THE BUILD. hacking with bienvenu... 2001-02-08 06:17:57 +00:00
rginda%netscape.com
da8380bcd8 add some directories to the common makefile 2001-02-08 06:08:42 +00:00
rginda%netscape.com
7ade31ea4f is there no way to combine two .a files? 2001-02-08 06:06:33 +00:00
rginda%netscape.com
63b24fce21 changes to get js2_shell to build 2001-02-08 06:01:54 +00:00
rginda%netscape.com
b1f74a06c5 Changes to get the back end building again.
Removed "dependencies" file (part of old make system.)
2001-02-08 05:02:10 +00:00
rginda%netscape.com
e2301c3916 removing these tests, they've been relocated to js2/tests/js 2001-02-08 04:59:21 +00:00
pschwartau%netscape.com
106efc7817 Exported functionality common to RegExp tests to new file js/tests/ecma_3/RegExp/shell.js 2001-02-08 04:04:48 +00:00
pschwartau%netscape.com
5cc9cfb919 Exported functionality common to RegExp testing to new file js/tests/ecma_3/RegExp/shell.js 2001-02-08 04:03:02 +00:00
pschwartau%netscape.com
766e838c4f Initial add. Contains functionality common to RegExp testing 2001-02-08 03:58:58 +00:00
bienvenu%netscape.com
513c52de5f more work on db view NOT YET PART OF BUILD 2001-02-08 03:27:25 +00:00
sspitzer%netscape.com
8d258feb5a fix for #63186, crash in subscribe dialog. the UW IMAP server
is sending us folders names that aren't modified UTF7 and this
causes us to crash.  also fix a warning.
r=jgmyers,sr=bienvenu,a=brendan
2001-02-08 02:54:21 +00:00
javi%netscape.com
3e57841b59 First Checked In. 2001-02-08 02:25:25 +00:00
bienvenu%netscape.com
ff1a4d77f3 fix one cause of 67989, meteors never stop spinning in mail news r/sr mscott/sspitzer a=brendan 2001-02-08 01:55:35 +00:00
pschwartau%netscape.com
f65b30a051 Whitespace cleanup 2001-02-08 01:32:58 +00:00
nelsonb%netscape.com
9c6844617f Changes suggested by Wan-Teh. 2001-02-08 01:32:32 +00:00
pschwartau%netscape.com
ad6952fe99 *** empty log message *** 2001-02-08 01:30:15 +00:00
wtc%netscape.com
18e1a7aec5 Set NSS version to 3.2. 2001-02-08 01:22:01 +00:00
pschwartau%netscape.com
a4c1795cc3 More minor adjustments - 2001-02-08 01:18:55 +00:00
pschwartau%netscape.com
e3608c31cf Minor adjustments - 2001-02-08 01:05:23 +00:00
rginda%netscape.com
165cf7ee76 changes to add runtime code into the library 2001-02-08 00:48:12 +00:00
dr%netscape.com
2574f3c7be fix for 30841. r=pinkerton, sr=hyatt, a=blizzard 2001-02-08 00:44:36 +00:00
javi%netscape.com
8e8d93ab17 First Checked In. 2001-02-08 00:41:58 +00:00
javi%netscape.com
04184f460b Add the new nsPK11DB.cpp file to the Mac project. correctly append Security to the user path when initializing on the Mac. 2001-02-08 00:41:42 +00:00
ducarroz%netscape.com
f8cf11c910 Fix for bug 37697. noHTMLRecipient wasn't retreived correctly. R=sspitzer, SR=mscott, A=asa 2001-02-08 00:17:58 +00:00
rginda%netscape.com
c57bae9e75 fixing filenames, none of these files had prior history. 2001-02-08 00:14:20 +00:00
jgmyers%netscape.com
ba976f5df1 fix MIME encoded-word decoder: bugs 51453 58114 r=ducarroz sr=sspitzer a=asa 2001-02-08 00:12:50 +00:00
wtc%netscape.com
9e6e35f1f7 Bugzilla bug #62855: put my checkin back in again. Sorry about the
flipflop.
Modified files: arch.mk, config.mk
2001-02-07 23:52:11 +00:00
javi%netscape.com
4113bdd142 One last fix for the OS/2 guys. Make the cmt libraries a static
library.  Fix for Bug 63209

  r=cls, javi
2001-02-07 23:43:29 +00:00
thayes%netscape.com
e94c3c1fd3 Fix compiler warnings/failures on Linus/Mac 2001-02-07 23:38:59 +00:00
wtc%netscape.com
c6b073b9df Checked in Javier Pedemonte's patch (<pedemont@us.ibm.com) to fix OS/2
build breakage.  r=wtc@netscape.com.  a=leaf@mozilla.org.
2001-02-07 23:38:39 +00:00
pschwartau%netscape.com
39d6604a1c Initial add. Regression test for bug 67773 2001-02-07 23:19:12 +00:00
bryner%uiuc.edu
3dadcb2d4b Cleaning up indenting. Not part of build. 2001-02-07 23:07:56 +00:00
rginda%netscape.com
39356dd364 ok, that was silly, removing generated Makefiles 2001-02-07 21:33:02 +00:00
rginda%netscape.com
e4ba7a1cd9 Adding Makefiles 2001-02-07 21:29:36 +00:00
rginda%netscape.com
20d35dc639 adding automake file 2001-02-07 21:27:25 +00:00