diff --git a/src/sbbs3/ftpsrvr.c b/src/sbbs3/ftpsrvr.c
index c58b0ce9313bb13279d3a3d8da1d970bdc06782d..f083cf4a4774c7d2d6aaa95cf6433c7cc5c7706a 100644
--- a/src/sbbs3/ftpsrvr.c
+++ b/src/sbbs3/ftpsrvr.c
@@ -2180,8 +2180,10 @@ static BOOL ftpalias(char* fullalias, char* filename, user_t* user, int* curdir)
 		fname=p+1;
 	}
 
-	if(filename==NULL /* directory */ && *fname /* filename specified */)
+	if(filename==NULL /* directory */ && *fname /* filename specified */) {
+		fclose(fp);
 		return(FALSE);
+	}
 
 	while(!feof(fp)) {
 		if(!fgets(line,sizeof(line),fp))