derekf pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=599cdc93fa69dd54e132aec65cdda313db0133c6

commit 599cdc93fa69dd54e132aec65cdda313db0133c6
Author: Derek Foreman <[email protected]>
Date:   Wed Jul 12 13:01:43 2017 -0500

    ecore_anim: set the tick thread's fds CLOEXEC
    
    If we don't set them CLOEXEC then they end up in the fd space of every
    client Enlightenment launches, allowing any client to write to them
    and mess with animator timings or freeze the compositor.
---
 src/lib/ecore/ecore_anim.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/lib/ecore/ecore_anim.c b/src/lib/ecore/ecore_anim.c
index 47282c7801..d3b4400ae8 100644
--- a/src/lib/ecore/ecore_anim.c
+++ b/src/lib/ecore/ecore_anim.c
@@ -397,6 +397,8 @@ _timer_tick_begin(void)
         int fds[2];
 
         if (pipe(fds) != 0) return;
+        eina_file_close_on_exec(fds[0], EINA_TRUE);
+        eina_file_close_on_exec(fds[1], EINA_TRUE);
         timer_fd_read = fds[0];
         timer_fd_write = fds[1];
         if (getenv("ECORE_ANIMATOR_SKIP")) tick_skip = EINA_TRUE;

-- 


Reply via email to