FlashComGuru Home InfluxisCDNImediaseeUvault
                                                                                       Forum Index | Active Topics | Register
                                                                                                          List Overview | List Archives
                                                                                                                           About this site | Advertise
 

home

Adobe AIR (11)
Applications (40)
Books & Training (11)
Collaboration (18)
Components (10)
Events (80)
Flash Player (35)
Flex (39)
FMS (110)
General (123)
Hosting (6)
Jobs (17)
Off topic (36)
OSMF (3)
Press Releases (23)
Site Check (11)
Tools (53)
Videos & Players (74)

Follow me on Twitter

 
*** UPDATE 10th Octover 2008 *** The bug has now been withdrawn from the SWFObject project since we are no longer convinced that SWFObject is the culprit here. In fact I'm having a hard time reproducing this problem now in anything but one application which uses the old Macromedia communication framework. With that particular app I can reproduce the problem regardless of browser and OS, whereas before the problem only surfaced for me on IE on Windows. I will post updated here as I find them. *** END UPDATE ***

I've just managed to iron out a nasty bug in one of my FMS apps and this issue will likely affect other applications.
One of my clients noticed that some users would show up multiple times in a userlist of one of my applications. The userlist was tied to a SharedObject and users were removed from this SharedObject as they logged off. I noticed that the issue only surfaces in Internet Explorer 6 and 7, regardless of the minor Flash Player version used.
Moreover (and this was the hard bit to figure out) the issue seemed to surface only on those pages which used SWFObject 2 or SWFObject 2.1 to embed the SWF. Any pages using a previous version of SWFObject (in particular I was using version 1.5) the problem did not occur.

My conclusion is therefore that the problem somehow lies with SWFObject and how it interacts with Internet Explorer. For some reason the onDisconnect event is not invoked on FMS (I was using FMS 2 in this particular app) when my SWF was embedded with SWFObject 2.0 or above and I have now rolled back to SWFObject 1.5. Hope this helps someone as it may easily have you pulling your hair out.

Comments
[Add Comment]
Stefan.

As a moderator o the swfobject project, I will log an issue here ( http://code.google.com/p/swfobject/issues/list ) . Could you please supply me a link to an app / test page which exhibits the behavior?

Cheers,
Aran
# Posted By Aran | 8/7/08 12:33 PM
yes no problem, could you supply your email or drop me a line at stefan AT flashcomguru.com
# Posted By Stefan Richter | 8/7/08 12:43 PM
Another interesting thing I noticed in dealing with non-disconnects... tabbed browsing in IE7 also plays a role. I've found that even when using SWFObject v1, having multiple tabs open can also prevent FMS from seeing the client disconnect (open the FMS app page in one tab, open google in another tab, close the FMS tab... no disconnect). If find this to be the case with FMS 2 and 3.

In the end, I'm still using the old "heartbeat" connection checking method in any application that relies on timely detection of clients leaving... seems that's the only bulletproof way of doing it.

Also, I tend to do things to prevent duplicate entires in user lists to account for the "fudge" time I allow in the hearbeat routine. I typically check the userlist object for matches, and then disconnect the client associated with the old entry before adding the new client to the list (sort of how Yahoo IM handles their logins... new client bumps old client). Of course, this assumes that the application requires registration of user names (most of mine do).
# Posted By Jay Charles | 8/7/08 1:35 PM
i have the same problem on some machines even without swfobject. the swfobject issue is solved by manually closing connection on beforeunload event from the webpage (unload event might not fire)
# Posted By eitanpo | 8/7/08 2:42 PM
Is there a huge delay on the onDisconnect firing or not at all? I don't know if this applies, but even when Firefox closes, it still runs for a bit in the background saving session info. Could this be something similar only in IE?
# Posted By TK | 8/14/08 7:45 PM
not sure, I haven't waited long enough. However closing IE kills the user right away, and fires onDisconnect. The SWFObject guys have more or less confirmed that this may be a bug in the SWFObject cleanup routine it runs when it unloads.
# Posted By Stefan Richter | 8/14/08 8:47 PM
I came up against this too. There is a fix available in the form of a bit of JS to close the connection:

swfobject.addDomLoadEvent( function(){
swfobject.removeSWF( my_div_id );
});

Does the trick for me (using SWFObject v2.1 beta7).

Hope this helps.
# Posted By Stephen Beattie | 9/8/08 5:07 PM
Well, this is one more reason not to use the IE. Sorry for that pragmatic way to solve the problem, but that
# Posted By Flug | 9/10/08 10:08 AM
I have an fms app which won't disconnect people in IE unless they close the browser completely. Simply going to another url in the browser leaves their name in the peoplelist. I've tried everything here without success. Even IE 8 shows same problem on Vista. IE on XP works fine as well as some versions of IE on Vista.

Firefox, opera, chrome all work fine everytime.

The problem, it seems, is IE won't "leave" pages until it's closed no matter what.

Any ideas on this one?
# Posted By George Kosch | 10/25/08 4:29 PM
Hi George,
could you email me please (stefan AT flashcomguru.com) and if possible send me your application. Someone at Adobe is looking into the issue and it would help if I had more cases to show them.
I have one application however which shows this behaviour in other browsers too and I am not yet sure why this is happening.
# Posted By Stefan Richter | 10/25/08 7:26 PM
Here is another example of this issue with Yahoo's live video area at (mine for example) http://live.yahoo.com/georgekosch. I start my video feed and then hit refresh in IE only to have their system tell me that a live video is still on. If I do same with chrome/FF it works fine. System logs me out, then in and I can start video again.

This must be an IE issue with live fms video where the browser "just won't let go" until you close it down completely.

You can get a free account and see for yourself if you have a newer version of IE 7 or beta 8. Again, other workstation with IE (older) is fine.

Stefan, I sent you some stuff on this via hotmail account - just in case it's in your spam folder :)
# Posted By George Kosch | 10/25/08 10:12 PM
I got out of bed this morning to a freshly rebooted computer and Bill Gates telling me they had to "apply patches" and....IE disconnects just fine!! Works like a charm.
# Posted By George Kosch | 11/13/08 2:49 PM