From 988d8d4088db4b7d73bd1f8641a53b20f3a411a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Fri, 23 Jul 2010 10:13:05 +0000 Subject: [PATCH] * If an error is notified, also forward the even to read/write. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37713 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/network/stack/net_socket.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/add-ons/kernel/network/stack/net_socket.cpp b/src/add-ons/kernel/network/stack/net_socket.cpp index 40099b34b5..1d9dc3186e 100644 --- a/src/add-ons/kernel/network/stack/net_socket.cpp +++ b/src/add-ons/kernel/network/stack/net_socket.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2006-2009, Haiku, Inc. All Rights Reserved. + * Copyright 2006-2010, Haiku, Inc. All Rights Reserved. * Distributed under the terms of the MIT License. * * Authors: @@ -902,7 +902,8 @@ socket_notify(net_socket* _socket, uint8 event, int32 value) switch (event) { case B_SELECT_READ: - if ((ssize_t)socket->receive.low_water_mark > value && value >= B_OK) + if ((ssize_t)socket->receive.low_water_mark > value + && value >= B_OK) notify = false; break; @@ -913,12 +914,13 @@ socket_notify(net_socket* _socket, uint8 event, int32 value) case B_SELECT_ERROR: socket->error = value; + event |= B_SELECT_READ | B_SELECT_WRITE; break; } MutexLocker _(socket->lock); - if (notify && socket->select_pool) + if (notify && socket->select_pool != NULL) notify_select_event_pool(socket->select_pool, event); return B_OK;