How do I determine whether an intermittent failure is due to a bug in Firefox or Flash Plug-in?
We have an old Flash application that has worked fine for years, but intermittently fails on latest versions of Firefox. Using the same version of the Flash Player, the application runs fine in Internet Explorer. Recompiling the product is risky, and I'm trying to fully understand the problem before resorting to that. I'd like to be able to point to a known browser or player bug, but I can't really say where the problem is yet.
I've gather the following information using Charles Proxy:
The Flash application gets a list of files it needs to load. It requests a file then waits until the Flash Plug-in dispatches an Event.COMPLETE before requesting the next file. During this process I can see the HTTP requests and server responses. When the application "hangs", Charles Proxy reports that the response actually completed; however, Firefox's status bar shows "Tr开发者_JAVA百科ansferring ..."
Sometimes for an extended period, I can't recreate the problem at all. At other times, the hang-up happens over and over again.
Finally, if we switch to using https instead of http, the problem NEVER happens. Because Charles Proxy shows Status Complete while Firefox shows that a Transfer is still occurring, I speculate that the problem is actually in Firefox. I believe that Firefox is failing to recognize when the file actually finished loading, and therefore it fails to tell the Flash Player. The end result is that our code gets no Event.COMPLETE from the player and cannot continue requesting files.
Has anyone seen something similar to this? Is there a known issue in Firefox that would cause such intermittent failure?
Since it appears that the Flash application is going through Firefox's networking stack for its HTTP requests, make sure that a Firefox extension like AdBlock isn't getting in the way. You should try disabling all extensions to see if the problem still happens. I've had a similar issue to this occur in the past.
精彩评论