Author: trawick Date: Mon Nov 9 12:48:25 2009 New Revision: 834040 URL: http://svn.apache.org/viewvc?rev=834040&view=rev Log: fix special poll() processing on Win32 to be consistent between . apr_{pollset|pollcb}_create_ex(..., APR_POLLSET_DEFAULT) and . apr_{pollset|pollcb}_create(...) Modified: apr/apr/trunk/poll/unix/pollcb.c apr/apr/trunk/poll/unix/pollset.c Modified: apr/apr/trunk/poll/unix/pollcb.c URL: http://svn.apache.org/viewvc/apr/apr/trunk/poll/unix/pollcb.c?rev=834040&r1=834039&r2=834040&view=diff ============================================================================== --- apr/apr/trunk/poll/unix/pollcb.c (original) +++ apr/apr/trunk/poll/unix/pollcb.c Mon Nov 9 12:48:25 2009 @@ -84,6 +84,17 @@ *ret_pollcb = NULL; + #ifdef WIN32 + /* This will work only if ws2_32.dll has WSAPoll funtion. + * We could check the presence of the function here, + * but someone might implement other pollcb method in + * the future. + */ + if (method == APR_POLLSET_DEFAULT) { + method = APR_POLLSET_POLL; + } + #endif + if (method == APR_POLLSET_DEFAULT) method = pollset_default_method; while (provider == NULL) { @@ -135,14 +146,6 @@ apr_uint32_t flags) { apr_pollset_method_e method = APR_POLLSET_DEFAULT; - #ifdef WIN32 - /* This will work only if ws2_32.dll has WSAPoll funtion. - * We could check the presence of the function here, - * but someone might implement other pollcb method in - * the future. - */ - method = APR_POLLSET_POLL; - #endif return apr_pollcb_create_ex(pollcb, size, p, flags, method); } Modified: apr/apr/trunk/poll/unix/pollset.c URL: http://svn.apache.org/viewvc/apr/apr/trunk/poll/unix/pollset.c?rev=834040&r1=834039&r2=834040&view=diff ============================================================================== --- apr/apr/trunk/poll/unix/pollset.c (original) +++ apr/apr/trunk/poll/unix/pollset.c Mon Nov 9 12:48:25 2009 @@ -222,6 +222,17 @@ *ret_pollset = NULL; + #ifdef WIN32 + /* Favor WSAPoll if supported. + * This will work only if ws2_32.dll has WSAPoll funtion. + * In other cases it will fall back to select() method unless + * the APR_POLLSET_NODEFAULT is added to the flags. + */ + if (method == APR_POLLSET_DEFAULT) { + method = APR_POLLSET_POLL; + } + #endif + if (method == APR_POLLSET_DEFAULT) method = pollset_default_method; while (provider == NULL) { @@ -297,14 +308,6 @@ apr_uint32_t flags) { apr_pollset_method_e method = APR_POLLSET_DEFAULT; - #ifdef WIN32 - /* Favor WSAPoll if supported. - * This will work only if ws2_32.dll has WSAPoll funtion. - * In other cases it will fall back to select() method unless - * the APR_POLLSET_NODEFAULT is added to the flags. - */ - method = APR_POLLSET_POLL; - #endif return apr_pollset_create_ex(pollset, size, p, flags, method); }