evas: fix huge memory leak for non-async rendering
authorJean Guyomarc'h <jean.guyomarch@openwide.fr>
Fri, 3 Jun 2016 10:08:40 +0000 (12:08 +0200)
committerJean Guyomarc'h <jean@guyomarch.bzh>
Fri, 3 Jun 2016 10:17:12 +0000 (12:17 +0200)
commit5b0ddfec3816377761a122a2eb862446bb415ba9
tree8081a24af794d15fb24b5de6f9d0a98fa0165ece
parentb612fe2485402407603aafc8c3ec6f1e5db71649
evas: fix huge memory leak for non-async rendering

So... I had issues with evas-fb engine which was massively leaking,
one image per frame.
After investigating a bit with @cedric on IRC, the reference count
of the cache entries was always 2 before the engine dropped.
So, for each frame with an animation, we could never drop a cache
entry, leading to a trumendous amount of memory leaking.

Now for non-async rendering, we copy the behaviour of
evas_render_pipe_wakeup() which is called in async-mode,
and actually drops a reference in the cache entry.

Fixes T3763
src/lib/evas/canvas/evas_render.c