From 9f9b56fb78e0ea29aa60cdeaf2198d953e700aaf Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Wed, 7 Aug 2002 01:03:41 +0000
Subject: [PATCH] No longer tries to add directory entries as files to the
 database (whoops). Win32 build uses mangled short filenames for database
 entries.

---
 src/sbbs3/addfiles.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/sbbs3/addfiles.c b/src/sbbs3/addfiles.c
index c7f2e782dd..fb9bf4318f 100644
--- a/src/sbbs3/addfiles.c
+++ b/src/sbbs3/addfiles.c
@@ -215,11 +215,18 @@ void addlist(char *inpath, file_t f, uint dskip, uint sskip)
 		dir=opendir(str);
 
 		while(dir!=NULL && (dirent=readdir(dir))!=NULL) {
-			sprintf(filepath,"%s%s",str,dirent->d_name);
+			sprintf(tmp,"%s%s",str,dirent->d_name);
+			if(isdir(tmp))
+				continue;
+#ifdef _WIN32
+			GetShortPathName(tmp, filepath, sizeof(filepath));
+#else
+			strcpy(filepath,tmp);
+#endif
 			f.misc=0;
 			f.desc[0]=0;
 			f.cdt=flength(filepath);
-			padfname(dirent->d_name,f.name);
+			padfname(getfname(filepath),f.name);
 			printf("%s  %10lu  %s\n"
 				,f.name,f.cdt,unixtodstr(&scfg,fdate(filepath),str));
 			exist=findfile(&scfg,f.dir,f.name);
-- 
GitLab