Severe MSIE problem (Re: [pws] John Kozak on Linux Swiki problems)

John Kozak jk at xylema.org
Sun Jun 24 17:28:13 UTC 2001


  Andreas Kuckartz:
> I have not yet verified the MSIE version number, but our Intranet Swiki
> shows the same terrible effect when it is accessed with the released MSIE
> 5.5 (?) as soon as the reload button is hit before a page was displayed
> completely in the browser. One missing bitmap usually is enough.

I think I may have fixed this.  I'm running a version with my fix here,
and it seems OK - in particular, it's immune to jamming the F5 key,
which would kill the distributed version dead.

What I've done is basically a bodge: I've examined what was going
wrong at the lowest level, then made the least changes to fix that.
This isn't always a recipe for long-term happiness, so I'll present my
analysis of what's wrong, and hopefully an "official" fix modulo a
proper understanding of the squeak TCP/IP innards can emerge.

source file sqUnixSocket.c, lines 645 ff:

    	  /* let's assume it's a transient error, and continue to wait
	     for a connection */
	  pss->sockError= errno;
	  pss->sockState= WaitingForConnection;
	  perror("acceptHandler (ignored)");
	  aioEnable(pss);

"aioEnable" here should "turn the server socket back on", but it
doesn't:
   
  * the handler isn't set to acceptHandler
  * lastSocket isn't set correctly

Essentially, aioEnable isn't the inverse of aioDisable.



Fix: I added this line immediately after those quoted above: 

	  aioHandle(pss, acceptHandler, AIO_RD); 

and that seems to work.  

regards,

John





More information about the Squeak-dev mailing list