From 02563a35f0ce4bb5154a68bd568d0263c76ec261 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sun, 14 Dec 2014 22:48:46 +0100 Subject: [PATCH] lib/nfs/Connection: fix reconnect after mount failure When mounting had not yet finished, SocketMonitor::IsDefined() was always false, due to the workaround at the beginning of the function that calls SocketMonitor::Steal(). This commit drops the IsDefined() check because it was never necessary and breaks reconnect. --- NEWS | 1 + src/lib/nfs/Connection.cxx | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 6e83245c4..d20dba397 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,7 @@ ver 0.19.7 (not yet released) * input - nfs: fix crash while canceling a failing file open operation - nfs: fix memory leak on connection failure + - nfs: fix reconnect after mount failure * playlist - don't skip non-existent songs in "listplaylist" * fix memory allocator bug on Windows diff --git a/src/lib/nfs/Connection.cxx b/src/lib/nfs/Connection.cxx index e0d8ad774..04c5a9e53 100644 --- a/src/lib/nfs/Connection.cxx +++ b/src/lib/nfs/Connection.cxx @@ -483,7 +483,7 @@ NfsConnection::OnSocketReady(unsigned flags) DestroyContext(); closed = true; - } else if (SocketMonitor::IsDefined() && nfs_get_fd(context) < 0) { + } else if (nfs_get_fd(context) < 0) { /* this happens when rpc_reconnect_requeue() is called after the connection broke, but autoreconnect was disabled - nfs_service() returns 0 */