diff --git a/src/sbbs3/data.cpp b/src/sbbs3/data.cpp
index 823030eab02e513164324fb978e6a4d071833476..cc3cb1e9626decd5889c79634c968b3015726545 100644
--- a/src/sbbs3/data.cpp
+++ b/src/sbbs3/data.cpp
@@ -153,18 +153,6 @@ int sbbs_t::getuserxfers(int fromuser, int destuser, char *fname)
 	return(found);
 }
 
-/****************************************************************************/
-/* Returns the number of files in the database for 'dir'					*/
-/****************************************************************************/
-uint sbbs_t::gettotalfiles(uint dirnum)
-{
-	char str[81];
-
-	sprintf(str,"%s%s.ixb", cfg.dir[dirnum]->data_dir, cfg.dir[dirnum]->code);
-	return((uint)(flength(str)/F_IXBSIZE));
-}
-
-
 /****************************************************************************/
 /* Fills the timeleft variable with the correct value. Hangs up on the      */
 /* user if their time is up.                                                */
diff --git a/src/sbbs3/execfile.cpp b/src/sbbs3/execfile.cpp
index 83135dde3d8e1f6ca30ae40d71db32e87e318dc3..f4d6ef5e7bde0cdf8c0699abdbeb39bb4d95f272 100644
--- a/src/sbbs3/execfile.cpp
+++ b/src/sbbs3/execfile.cpp
@@ -277,7 +277,7 @@ int sbbs_t::exec_file(csi_t *csi)
 				bputs(text[CantUploadHere]);
 				return(0); }
 
-			if(gettotalfiles(i)>=cfg.dir[i]->maxfiles)
+			if(getfiles(&cfg,i)>=cfg.dir[i]->maxfiles)
 				bputs(text[DirFull]);
 			else {
 				upload(i);
@@ -288,7 +288,7 @@ int sbbs_t::exec_file(csi_t *csi)
 			if(cfg.user_dir==INVALID_DIR) {
 				bputs(text[NoUserDir]);
 				return(0); }
-			if(gettotalfiles(cfg.user_dir)>=cfg.dir[cfg.user_dir]->maxfiles)
+			if(getfiles(&cfg,cfg.user_dir)>=cfg.dir[cfg.user_dir]->maxfiles)
 				bputs(text[UserDirFull]);
 			else if(useron.rest&FLAG('U'))
 				bputs(text[R_Upload]);
@@ -303,7 +303,7 @@ int sbbs_t::exec_file(csi_t *csi)
 			if(cfg.sysop_dir==INVALID_DIR) {
 				bputs(text[NoSysopDir]);
 				return(0); }
-			if(gettotalfiles(cfg.sysop_dir)>=cfg.dir[cfg.sysop_dir]->maxfiles)
+			if(getfiles(&cfg,cfg.sysop_dir)>=cfg.dir[cfg.sysop_dir]->maxfiles)
 				bputs(text[DirFull]);
 			else if(useron.rest&FLAG('U'))
 				bputs(text[R_Upload]);
diff --git a/src/sbbs3/sbbs.h b/src/sbbs3/sbbs.h
index 8efff083099a8eca3225867d3797320a1ec5b091..b142d902f805dc786724c0e1b5d319e2e8ced319 100644
--- a/src/sbbs3/sbbs.h
+++ b/src/sbbs3/sbbs.h
@@ -346,7 +346,6 @@ public:
 
 	int		dir_op(uint dirnum);
 	int		getuserxfers(int fromuser, int destuser, char *fname);
-	uint	gettotalfiles(uint dirnum);
 	void	getnodeext(uint number, char * str);
 	void	putnodeext(uint number, char * str);
 	void	getnodedat(uint number, node_t * node, bool lock);