diff --git a/[refs] b/[refs] index a80ce21bb083..cbc66d4446f5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2e367a82fc2da335455984a7722c721dd3fa782b +refs/heads/master: 48564e628bd7662d7a0b3ac81c41cd0e4cc36dae diff --git a/trunk/fs/smbfs/request.c b/trunk/fs/smbfs/request.c index c71c375863cc..c71dd2760d32 100644 --- a/trunk/fs/smbfs/request.c +++ b/trunk/fs/smbfs/request.c @@ -339,9 +339,11 @@ int smb_add_request(struct smb_request *req) /* * On timeout or on interrupt we want to try and remove the * request from the recvq/xmitq. + * First check if the request is still part of a queue. (May + * have been removed by some error condition) */ smb_lock_server(server); - if (!(req->rq_flags & SMB_REQ_RECEIVED)) { + if (!list_empty(&req->rq_queue)) { list_del_init(&req->rq_queue); smb_rput(req); }