2002/07/15 23:12:28
[org.ibex.core.git] / src / org / xwt / MessageQueue.java
index 54c2a99..b5f7fde 100644 (file)
@@ -68,7 +68,7 @@ public class MessageQueue extends Thread {
                         i--;
                         continue;
                     }
-                    working = true;
+                    if (!(e instanceof Thread)) working = true;
                     currentlyPerforming = e;
 
                     // for debugging purposes
@@ -86,14 +86,11 @@ public class MessageQueue extends Thread {
 
             } catch (Throwable t) {
                 if (Log.on) Log.log(this, "caught throwable in MessageQueue.run(); this should never happen");
-
-                /* FIXME: causes crashes on Win32
                 if (Log.on) Log.log(this, "    currentlyPerforming == " + currentlyPerforming);
                 if (Log.on) Log.log(this, "    working             == " + working);
                 if (Log.on) Log.log(this, "    lastfunc            == " + lastfunc);
                 if (Log.on) Log.log(this, "    lastmessage         == " + lastmessage);
-                */
-
+                if (Log.on) Log.log(this, t);
                 if (Log.on) Log.log(this, "resuming MessageQueue loop");
             }
         }
@@ -127,15 +124,15 @@ public class MessageQueue extends Thread {
                         what = "background thread";
                     } else {
                         cx = Context.getContextForThread(MessageQueue.singleton);
-                        what = Main.initializationComplete ? "trap" : "script";
+                        what = "script";
                     }
-                    if (Log.on) Log.log(this, "WARNING: executing same " + what + " for " + (System.currentTimeMillis() - t) / 1000 + "s" +
+                    if (Log.on) Log.log(this, "note: executing same " + what + " for " + (System.currentTimeMillis() - t) / 1000 + "s" +
                                         " at " + cx.interpreterSourceFile + ":" + cx.interpreterLine);
                 } else {
                     m = MessageQueue.currentlyPerforming;
                     t = System.currentTimeMillis();
                 }
-                try { Thread.sleep(Main.initializationComplete ? 1000 : 15000); } catch (Exception e) { }
+                try { Thread.sleep(1000); } catch (Exception e) { }
             }
         }
     }