evas - gif loader rewrite (clean up code, document it a lot AND fix bugs)

after several days of beating head on desk, i gave up trying to find
the exact cause of some gifs not rendering right as animated gifs due
to the loader. it had something to do with dispose mode handling and
which frame it was applied to. i noticed the structure made it also
hard to fix, so this re-structures the entire thing with cleaner code,
less code AND more comments, with a limited memory cache (512k) for
previous frames per image (to avoid eating up huge memory blobs for
big/long animations - though at the expense of cpu), and with some
notes for future fixes - like fixing the "load 2 copies of the same
animated gif" issue... that's another day.

this does fix https://phab.enlightenment.org/T443 along with many
other things.
This commit is contained in:
Carsten Haitzler 2013-10-30 18:16:09 +09:00
parent 6c28aff7a0
commit 309e287b7c
1 changed files with 617 additions and 829 deletions

File diff suppressed because it is too large Load Diff