evas filter: make curve work for every accepted/tizen/unified/20190620.071902 submit/tizen/20190619.051039
authorShinwoo Kim <cinoo.kim@samsung.com>
Wed, 19 Jun 2019 01:28:34 +0000 (10:28 +0900)
committerHermet Park <hermetpark@gmail.com>
Wed, 19 Jun 2019 04:18:32 +0000 (13:18 +0900)
commit635ee0377cc79986ab1d4c16a2e3f4a41400a7cc
tree62b6be37793a38c95cc269a4cb7f18c8d9d4f159
parent128230a60a2ea748b61621f5baa6f1c4821b5069
evas filter: make curve work for every

Summary:
If an input buffer and an output buffer for the curve filter are same, it reads
and writes to the same texture which behavior is not defined. I could not find
good reference for this, but following could be a reference.

https://stackoverflow.com/questions/11410292/opengl-read-and-write-to-the-same-texture

The texture gets 0 color value as a result. So the curve filter does not work.
This patch makes the curve filter use different input and output buffer.

Test Plan:
This attached file could explain what 'read and write to the same texture' is.
{F3724537}

Reviewers: Hermet, jpeg, jsuya

Reviewed By: Hermet

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9085
src/lib/evas/filters/evas_filter.c