httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Trawick <traw...@gmail.com>
Subject Re: Can't compile trunk on Win
Date Sat, 12 Nov 2005 10:27:09 GMT
On 11/12/05, Vadim Chekan <kot.begemot@gmail.com> wrote:
> Hi all,
>
> I've tryed to compile httpd/trunk and got an error:
> core_filters.obj : error LNK2019: unresolved external symbol
> _apr_wait_for_io_or_timeout referenced in function
> _send_brigade_blocking

> I have apr from apr/branches/1.2.x and looks like it doesn't contain
> apr_wait_for_io_or_timeout for windows, unix only.

wasn't supposed to be used

Try this??

Index: server/core_filters.c
===================================================================
--- server/core_filters.c       (revision 332755)
+++ server/core_filters.c       (working copy)
@@ -26,7 +26,6 @@
 #include "apr_hash.h"
 #include "apr_thread_proc.h"    /* for RLIMIT stuff */
 #include "apr_hooks.h"
-#include "apr_support.h"

 #define APR_WANT_IOVEC
 #define APR_WANT_STRFUNC
@@ -624,7 +623,17 @@
         rv = send_brigade_nonblocking(s, bb, bytes_written, c);
         if (rv != APR_SUCCESS) {
             if (APR_STATUS_IS_EAGAIN(rv)) {
-                rv = apr_wait_for_io_or_timeout(NULL, s, 0);
+                /* Wait until we can send more data */
+                apr_int32_t nsds;
+                apr_interval_time_t timeout;
+                apr_pollfd_t pollset;
+
+                pollset.p = c->pool;
+                pollset.desc_type = APR_POLL_SOCKET;
+                pollset.reqevents = APR_POLLOUT;
+                pollset.desc.s = s;
+                apr_socket_timeout_get(s, &timeout);
+                rv = apr_poll(&pollset, 1, &nsds, timeout);
                 if (rv != APR_SUCCESS) {
                     break;
                 }

Mime
View raw message