Why is my swf causing the Flash Player to crash - apache-flex

I've got a flex-based swf, which is loading an AS 2-based swf and then, negotiating further activity via a LocalConnection.
From time to time, the AS 2-swf can request that the flex-based swf load a movie.
I've arranged this via on(release){} functions.
The AS 2-swf, I'm making in Swish Max. In Swish, when i set the on (release) on a text field, (to invoke .send() on my localconnection), it works splendidly. However, when I attempt to perform the same calls for an on(release) attached to a movieclip, it actually causes the Flash player, and even the browser plugin to crash.
In fact, the browser (IE) crashes as well.
I checked the debug trace that ie asked me to send to microsoft at the last IE crash, and i noticed a StackOverflow exception embedded deep in the trace, but I couldn't determine its source.
Can you help me understand what's going on here?

Are you having more than one LocalConnection connect to the same channel? This will cause the browser to crash.

Are you sending lots of requests at the same time, this will make it crash, and some browsers are more sensitive for those things than other.

This earlier post might have some helpful tips for you.

That's a wrong way to debug your application. Use your Flex Builder's debugging tool instead. You tend to lay blame on LocalConnection as it is the most complex part of the operation, when it could just as easily be an infinite loop.
You don't seem to be using the right tools either. I'd trust FF's FireBug over IE's dump. Besides, we'll need to see some more code before we can accurately tell you what's wrong.

Are you sure the crash is not only in your computer? Try running the FlashUtil??.exe at \WINDOWS\system32\Macromed\Flash\ to fix/update the Flash installaction. There are some known issues that corrupt Flash installation so it become unstable when using some objects.

Related

Alternative Java applet network drive access

Chrome is on the verge of definitly break compatability with NPAPI, and IE breaking with ActiveX the future of Java Applets is dark. Currenty we actively use a secure applet for out client organizations that enables their users to upload a bunch of files from their file system to our servers with the click of a button. The applet has full access to any configured drive, including network drives.
With the imminent death of the applet this functionality is going to be lost if we don't find an alternative. I have already tried to explore different solutions, including the chrome FileSystem API but that is currently only available for Chrome (http://caniuse.com/#feat=filesystem) and has limited access.
Does anybody know about an alternative to keep supporting the much appreciated functionality? Unfortunately we are obligated to support all browser down to IE8.
I've written a post about this here.
Once Google Chrome was the first to announce that they won’t be supporting NPAPI anymore, they were also the first to provide a new architecture in order to rewrite your code to work on their browser. You can take a look on Native Messaging, which “can exchange messages with native applications using an API that is similar to the other message passing APIs”. The problem is that this approach only works on Chrome, is not something that you can adapt to other browsers.
A more useful approach is FireBreath, a browser plugin in a post NPAPI world. Check the words below from one buddy of the project:
“FireBreath 2 will allow you to write a plugin that works in NPAPI, ActiveX, or through Native Messaging; it’s getting close to ready to go into beta. It doesn’t have any kind of real drawing support, but would work for what you describe. The install process is a bit of a pain, but it works. The FireWyrm protocol that the native messaging component uses could be used with any connection that allows passing text data; it should be possible to make it work with js-ctypes on firefox or plausibly WEB-RTC or even CORS AJAX in some way. For now the only thing we needed to solve was Chrome, but we did it in a way that should be pretty portable to other technologies.”
In light of the answer provided by Uly Marins I have researched the options suggested. Unfortunately these options weren't viable for our application, because the mayority of our users do not have sufficient rights to install third party plugins. Additionally the API is still in Beta which won't do any good in a stable production environment.
The main problem we wanted to solve was the abbility to delete files from the accessed folders. It seemed like one of the mayor goals of the removal of the NPAPI support was exactly to prevent this kind of possibility. Therefore we needed to reduce our goals to a simple solution that was still acceptable for our users, with the additional training on how to clear the selected folder manually (because most of our users are almost computer illiterate and needed to access network folders).
Long answer short. The requested solution is just not possible anymore and had to be replaced by a simpler solution and additional training.

Sometimes Meteor screen freezes/cannot scroll

Sometimes, (more often than not), the browser screen freezes while navigating through a Meteor app. Basically everything works fine but I cannot scroll up or down.
There are no JS errors and everything seems to be running ok.
What could be causing htis?
This is often a hard thing to debug, but the first things I'd do are :
Disable your CSS (sometimes the silliest things can seem disasterous)
Check that there are no errors, in your terminal either (Meteor logs to the browser and terminal)
could you be flooding the front end with data? how big are your collections? are you using auto-publish or neatly crafted pub/subs?
What packages have you included in your project? try disabling any non essential packages
Install Kadira, and monitor your performance
Its really hard without more information, off the top of my head I imagine that you're either experiencing some weird styling / rendering issue, or that you're waiting on oversized subscriptions. Meteor overall should feel quite fluid and quick. I have a few questions :
Can you share more information about your app or where you're experiencing the issues you've described?
Is your project available anywhere?
What Browser are you viewing it in?
localhost or on a server? (if so what server environment?)

Flash Player Version Problem

I am facing one weird problem. In my flex application, there is one
grid on click of each grid item, it will dispatch one event and show
the details. As usual am changing the state of the component to
achieve this. But this is working perfectly in my machine, but from my
client side it is not working. Only difference am seeing is the
difference in flash player version. The FP version am having here is
10,0,45,2 but the onsite is having the latest version : 10.1.102.64.
Will this cause any problem in the behaviour of the flex application?
Am quite confused here, because I have no rights to change the player
version in my machine.
Do anyone have face the same problem like this. Or can anyone help me
with the main difference between these two versions.
Thanks in advance for your help.
Cheers,
Anoop
Most behavioral differences between flex applications are due to different flex SDKs being used during compilation (for instance, is your client viewing the binary-exact copy of the .swf file that you are running) or browsers with different plug-in APIs (the way they handle 500 errors for instance). If you think it's a flash player version issue (they are probably rare since they run regression tests across player builds so that flash swf files from eons ago run fine), you can certainly upgrade to that player build and see for yourself.
Are you also able to rule-out any connectivity issues such as firewalls or proxy servers?
While the item is clicked what are you using you using to get the selected item - event.target.selecteditem or event.currentTaget.selecteditem ? Try to change from target to currentTarget or vice-versa,it might work in both the machines.

Flex application suspended while in the background using Safari on Mac

Users of my Flex application report that sometimes the application is freezed when the browser window is minimized or they select another active tab over it. In this suspended state, the application receives no CPU share and all network connections it uses are closed. When the browser window is restored, the application is resumed. This happened with Safari 5 on Mac OS Leopard, with both Flash player 10.0 and 10.1. I searched a lot but I could not find any information about such behavior.
This behavior is not reproducible on each Mac with Safari, so my questions are:
Under which circumstances this may happen?
Is it possible entering in suspended state to be prevented and how?
Is it possible for the Flex application to be notified about going into sleep mode and wake up back?
This is a Safari thing and is by design. Newer versions of Safari suspend flash content that is not in the foreground tab (not sure when this started, version 4?) For instance, if you have multiple tabs open, each with a youtube video playing and you go back and forth between the tabs, only one of the videos will be playing at a time. To answer your specific questions:
This will happen to any flash content that is in a background tab (not sure about the minimized state.)
Not aware of a means of disabling this behavior.
You may want to dig around in the Safari documentation to see if there is some sort of JavaScript event that you can grab onto, but I don't think you are likely to have success there.
Good luck.
Are your users using Flash Player 10.1 ? As part of the performance improvements in 10.1; I believe an application in a minimized state will get throttled in order to use less system resources / battery power.
I don't think there is any way to prevent this; and no APIs exposed that relate to this.
Other people I've spoken to have had issues with using local connections between minimized apps and active apps. I'd bet there is already a bug in the bug base on that.
Wrt the following above:
.I don't think there is any way to prevent this; and no APIs exposed that relate to this.
You may want to check out if Silverline from Librato can help you control how much and which applications get what system resources (CPU, memory, Disk and Network IO) with dynamic control based on application demand. If the above issue is a feature of flash - then obviously it may not help. But if you are trying to say run multiple applications / processes and would like to control who gets how much system resources (dynamically) then you could try Silverline - it does not require any changes to OS or app. http://silverline.librato.com

Can I get debug symbols for flash player? Or any other way to get support for flash?

The company I am working for has a flash component (using flex and cs4) that crashes intermittently in chrome, FF and IE. (so far only win32 platforms)
I submitted a bug report to Adobe but have not heard anything back from them. Their support process seems like a black hole. WE can get a dump from Flash using these steps but after submitting the bug we got no help at all.
We loaded this into MS visual studio but can;t get decent stack information because there are no symbols for the flash stuff.
Microsoft and other companies provide symbols to help with debugging and we would like to get that from adobe. Is there any way to make progress on this?
Does anyone know where to get flash symbols or how else we can make progress?
It is hard to debug the process if the container just dies.
the binary is
flash10c.ocx
I just spent a painful hour on the phone with adobe folks - and the final answer from one of them (I spoke to about 8 people) was that they do not have a per incident purchase plan for developer support for flash.
I find that hard to believe.
Does anyone know how to get support for Flash?
I've seen Flash Player crash when allocating to large/many bitmaps when using cacheAsBitmap. There are probably hundreds of reasons why Flash Player can crash, but if you are using cacheAsBitmap, try turning it off and see if it helps..

Resources