diff --git a/lib/socket.c b/lib/socket.c index 15095e3..da89c5a 100644 --- a/lib/socket.c +++ b/lib/socket.c @@ -879,17 +879,16 @@ iscsi_service(struct iscsi_context *iscsi, int revents) return 0; } - if (revents & POLLOUT && (iscsi->outqueue != NULL || iscsi->outqueue_current != NULL)) { - if (iscsi_write_to_socket(iscsi) != 0) { - return iscsi_service_reconnect_if_loggedin(iscsi); - } - } if (revents & POLLIN) { if (iscsi_read_from_socket(iscsi) != 0) { return iscsi_service_reconnect_if_loggedin(iscsi); } } - + if (revents & POLLOUT) { + if (iscsi_write_to_socket(iscsi) != 0) { + return iscsi_service_reconnect_if_loggedin(iscsi); + } + } return 0; }