Ruediger Pluem wrote:
On 06/25/2008 02:55 PM, Nick Kew wrote:OK, I've just tested APR variants with Event MPM. It is indeed that fix that breaks it. When I revert the fix, the problem goes away. The original patch posted to fix the same bug works fine. Can I suggest you apply the following patch to 1.3.x (should work on 1.3.0 or 1.3.2 too) and let us know if it fixes the problem you're seeing? Index: poll/unix/port.c =================================================================== --- poll/unix/port.c (revision 662044) +++ poll/unix/port.c (working copy) @@ -315,7 +315,15 @@ if (ret == -1) { (*num) = 0; - rv = apr_get_netos_error(); + if (errno == EINTR) { + rv = APR_EINTR; + } + else if (errno == ETIME) { + rv = APR_TIMEUP; + } + else { + rv = APR_EGENERAL; + } } else if (nget == 0) { rv = APR_TIMEUP;Looks good and makes sense. apr_get_netos_error() in case of ETIME = 720062 APR_TIMEUP = 70007 So they are different. But I would do rv = apr_get_netos_error(); instead of rv = APR_EGENERAL;
Good observations. Folks, you want to fix these regressions before we T&R 1.3.3? Bill
