From 1fe62a57a292cd755a2c5e0c604d2c6298b8e156 Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Tue, 14 Apr 2020 07:08:50 +0000 Subject: [PATCH] Don't retry/loop in smb_fread(), regardless of the errno value, if we're at the end of the file. --- src/smblib/smbfile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/smblib/smbfile.c b/src/smblib/smbfile.c index e28bc77cff..e12fb6d336 100644 --- a/src/smblib/smbfile.c +++ b/src/smblib/smbfile.c @@ -98,7 +98,7 @@ size_t SMBCALL smb_fread(smb_t* smb, void* buf, size_t bytes, FILE* fp) while(1) { if((ret=fread(buf,sizeof(char),bytes,fp))==bytes) return(ret); - if(get_errno()!=EDEADLOCK && get_errno()!=EACCES) + if(feof(fp) || (get_errno()!=EDEADLOCK && get_errno()!=EACCES)) return(ret); if(!start) start=time(NULL); -- GitLab