diff options
author | Umesh Tanwar <umesh.tanwar@samsung.com> | 2017-03-14 14:24:16 +0530 |
---|---|---|
committer | Amitesh Singh <amitesh.sh@samsung.com> | 2017-03-14 14:38:44 +0530 |
commit | b938e2b5d873a98bad608e6856417d0bbabbbfc3 (patch) | |
tree | a7d2d2408b64ae665f9de7fdd548a3838375c005 | |
parent | c68a40987404375b36460b6a7f5ccceb45444b57 (diff) | |
download | efl-b938e2b5d873a98bad608e6856417d0bbabbbfc3.tar.gz |
ecore_animator: improve comparision check for stopping animator.
Summary:
Time cmparision does not ensure the corrctness of posotion.
It is beacuse of double number calculation. Double number calculation
are not convertable.for example:
1/39 = 0.02564102564;
but 0.02564102564 * 39 = 0.99999999996 != 1;
The addition check for pos ensure the pos to be reached at its correct
position.
@fix
Signed-off-by: Umesh Tanwar <umesh.tanwar@samsung.com>
Reviewers: cedric, singh.amitesh, jpeg, raster
Reviewed By: raster
Subscribers: atulfokk, cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D4709
Signed-off-by: Amitesh Singh <amitesh.sh@samsung.com>
-rw-r--r-- | src/lib/ecore/ecore_anim.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lib/ecore/ecore_anim.c b/src/lib/ecore/ecore_anim.c index 461d035152..84e31e1a40 100644 --- a/src/lib/ecore/ecore_anim.c +++ b/src/lib/ecore/ecore_anim.c @@ -983,7 +983,7 @@ _ecore_animator_run(void *data) pos = 0.0; } run_ret = animator->run_func(animator->run_data, pos); - if (t >= (animator->start + animator->run)) run_ret = EINA_FALSE; + if (t >= (animator->start + animator->run) && (pos >= 1.0)) run_ret = EINA_FALSE; return run_ret; } |