apr-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From grega...@apache.org
Subject svn commit: r1436667 - /apr/apr/trunk/poll/unix/z_asio.c
Date Mon, 21 Jan 2013 22:42:32 GMT
Author: gregames
Date: Mon Jan 21 22:42:32 2013
New Revision: 1436667

URL: http://svn.apache.org/viewvc?rev=1436667&view=rev
Log:
* don't just initialize cancel_a, use it for the asyncio AIO_CANCEL call
* reset the state to ASIO_INIT after finding something that wasn't apr_pollset_remove'd on
the prior ready ring

thanks to Pat O'Donnell / IBM for debugging assistance

Modified:
    apr/apr/trunk/poll/unix/z_asio.c

Modified: apr/apr/trunk/poll/unix/z_asio.c
URL: http://svn.apache.org/viewvc/apr/apr/trunk/poll/unix/z_asio.c?rev=1436667&r1=1436666&r2=1436667&view=diff
==============================================================================
--- apr/apr/trunk/poll/unix/z_asio.c (original)
+++ apr/apr/trunk/poll/unix/z_asio.c Mon Jan 21 22:42:32 2013
@@ -511,7 +511,7 @@ static apr_status_t asio_pollset_remove(
              * to eliminate race conditions
              */
 
-            rv = asyncio(&elem->a);
+            rv = asyncio(&cancel_a);
             DBG1(4, "asyncio returned %d\n", rv);
 
 #if DEBUG
@@ -640,6 +640,7 @@ static apr_status_t asio_pollset_poll(ap
             continue;  /* do not re-add if it has been _removed */
         }
 
+        elem->state = ASIO_INIT;
         elem->a.aio_cflags     = AIO_OK2COMPIMD;
 
         if (0 != (ret = asyncio(&elem->a))) {



Mime
View raw message