You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by ta...@apache.org on 2014/06/25 11:42:41 UTC

svn commit: r1605307 - /httpd/httpd/trunk/server/mpm/event/event.c

Author: takashi
Date: Wed Jun 25 09:42:41 2014
New Revision: 1605307

URL: http://svn.apache.org/r1605307
Log:
follow up r1601943:
Each apr_pollset_poll modified *out_pfd, so we need to copy it.

Modified:
    httpd/httpd/trunk/server/mpm/event/event.c

Modified: httpd/httpd/trunk/server/mpm/event/event.c
URL: http://svn.apache.org/viewvc/httpd/httpd/trunk/server/mpm/event/event.c?rev=1605307&r1=1605306&r2=1605307&view=diff
==============================================================================
--- httpd/httpd/trunk/server/mpm/event/event.c (original)
+++ httpd/httpd/trunk/server/mpm/event/event.c Wed Jun 25 09:42:41 2014
@@ -1969,10 +1969,12 @@ static void * APR_THREAD_FUNC listener_t
 
                 /* We only signal once per N sockets with this baton */
                 if (!(baton->signaled)) { 
+                    apr_pollfd_t *newpfd = apr_palloc(out_pfd->p, sizeof(apr_pollfd_t));
                     baton->signaled = 1;
+                    *newpfd = *out_pfd;
                     te = event_get_timer_event(-1 /* fake timer */, 
                                                socket_callback_wrapper, 
-                                               (apr_pollfd_t *)out_pfd,
+                                               newpfd,
                                                0, /* don't insert it */
                                                NULL /* no associated socket callback */);
                     /* remove other sockets in my set */