JS freeze dialog and google mail

koos vriezen koos.vriezen at gmail.com
Sun Nov 19 12:30:24 GMT 2006


Hi,

Lately I sometimes get the JS freeze dialog w/ google mail, and worse,
not one but six or seven of them. Now I think a quick fix is:

--- interpreter.cpp     (revision 606114)
+++ interpreter.cpp     (working copy)
@@ -381,9 +381,9 @@
 bool ExecState::hadException()
 {
   if (terminate_request) {
+    terminate_request = false;
     if (confirmTerminate())
       _exception = Error::create((ExecState*)this);
-    terminate_request = false;
   }
   return _exception.isValid();
 }

because timers still occur in this dialog event loop and will hit this
terminiate_request. I think a more advanced fix, eg. delaying all
timers when this dialog is up, is a bit too complicated as we have to
check every Window object (although w/ intervals, one could still have
many dialogs after a bathroom visit).

This extra CPU power needed lately may be of gmail 'enhancements' or
some unfortunate commit in KHTML. It does seem to get slower in time,
esp. closing the gmail tab becomes really slow, depending how much
gmail was used (as it seems).
What does worry me is that not long ago, I could have konqueror
running for weeks, and these days I restart konqueror almost every
day, because the memory use becomes so high.

Koos




More information about the kfm-devel mailing list