@@ -106,7 +106,15 @@ public static Object getPostEventQueue(boolean isPost) {
106106 AppContext .EVENT_QUEUE_KEY ));
107107 }
108108
109+ /**
110+ * From System.exit()
111+ */
109112 public static void exit () {
113+ /**
114+ * @j2sNative
115+ *
116+ * Thread.thisThread.group.systemExited = true;
117+ */
110118 JSUtil .getAppletViewer ().exit ();
111119 }
112120
@@ -345,6 +353,7 @@ public static void dispatchEvent(AWTEvent event, Object src, boolean andWait) {
345353 /**
346354 * @j2sNative
347355 *
356+ *
348357 * f = function()
349358 * {
350359 * if
@@ -373,7 +382,9 @@ public static int dispatch(Object f, int msDelay, int id) {
373382 /**
374383 * @j2sNative
375384 *
376- * var thread = java.lang.Thread.thisThread;
385+ * var thread = Thread.thisThread;
386+ * if (thread.group.systemExited)
387+ * return;
377388 * var thread0 = thread;
378389 * var id0 = SwingJS.eventID || 0;
379390 * var ff = function(_JSToolkit_setTimeout) {
@@ -387,9 +398,10 @@ public static int dispatch(Object f, int msDelay, int id) {
387398 * } catch (e) {
388399 * var s = "JSToolkit.dispatch(" + id +"): " + e + "\n" + (e.getStackTrace ? e.getStackTrace() + "\n" : "") + (!!e.stack ? e.stack : "");
389400 * System.out.println(s);
390- * alert(s)}
401+ * alert(s);
402+ * }
391403 * SwingJS.eventID = id0;
392- * java.lang. Thread.thisThread = thread0;
404+ * Thread.thisThread = thread0;
393405 * };
394406 * return (msDelay == -1 ? ff() : setTimeout(ff, msDelay));
395407 *
@@ -413,7 +425,9 @@ private static void invokeAndWait(JSFunction f, int id) {
413425 /**
414426 * @j2sNative
415427 *
416- * var thread = java.lang.Thread.thisThread;
428+ * var thread = Thread.thisThread;
429+ * if (thread.group.systemExited)
430+ * return;
417431 * var thread0 = thread;
418432 * (function(_JSToolkit_setTimeout) {
419433 * var id0 = SwingJS.eventID || 0;
@@ -424,7 +438,7 @@ private static void invokeAndWait(JSFunction f, int id) {
424438 * else
425439 * f();
426440 * SwingJS.eventID = id0;
427- * java.lang. Thread.thisThread = thread0;
441+ * Thread.thisThread = thread0;
428442 * })();
429443 *
430444 *
0 commit comments