I'm aware of the sane arguments for not adding explicit OOM handling to most apps (i.e. http://0pointer.de/blog/projects/on-oom.html etc).
However, I'm working with various mobile devices, sometimes with no virtual memory or peculiar OOM killers. Further, my app is the "main application" on the device
meaning that if it's killed there is no more GUI making a reboot the only way out. So I need to handle OOM gracefully in this app and I have
good mechanisms for doing that.
I'm looking for a video/audio playback solution for this application and I'd love to use GStreamer, and ideally without maintaining a GStreamer/GLib
fork so I'd like to avoid making changes to g_malloc etc.
Has anything like this been done before? Is there any GStreamer forks for mobile devices? Is there any other media playback framework that is
more suited for mobile devices? Can you recommend any particular approach to this problem?
So far what I was thinking was maybe I could use setjmp/longjmp to jump out of a modified g_malloc up through the stack to the point where my
application calls into GStreamer but this of course requires changes to g_malloc (though maybe not so big changes).