diff --git a/src/sbbs3/file.cpp b/src/sbbs3/file.cpp index acb9858fd9b94cc390d3047077166912b80f7f85..f822a9fc0e99b0180e20fe319f5d0499750a91b5 100644 --- a/src/sbbs3/file.cpp +++ b/src/sbbs3/file.cpp @@ -214,7 +214,7 @@ char * sbbs_t::getfilespec(char *str) bputs(text[FileSpecStarDotStar]); if(!getstr(str,12,K_UPPER)) strcpy(str,ALLFILES); -#ifndef __unix__ +#if 0 else if(!strchr(str,'.') && strlen(str)<=8) strcat(str,".*"); #endif @@ -234,6 +234,8 @@ BOOL filematch(char *filename, char *filespec) if(filespec[c]=='*') break; else if(filespec[c]=='?') continue; else if(toupper(filename[c])!=toupper(filespec[c])) return(FALSE); + if(filespec[8]==' ') /* no extension specified */ + return(TRUE); for(c=9;c<12;c++) if(filespec[c]=='*') break; else if(filespec[c]=='?') continue; diff --git a/src/sbbs3/filedat.c b/src/sbbs3/filedat.c index e0a75204596253670963e65fd159070904be9a4e..98bb3ee557bf11ec676c160d98a4525672adba3d 100644 --- a/src/sbbs3/filedat.c +++ b/src/sbbs3/filedat.c @@ -532,13 +532,16 @@ char* DLLCALL padfname(char *filename, char *str) d=c; if(filename[c]=='.') c++; while(d<8) - str[d++]=SP; - str[d++]='.'; + str[d++]=' '; + if(filename[c]>' ') /* Change "FILE" to "FILE " */ + str[d++]='.'; /* (don't add a dot if there's no extension) */ + else + str[d++]=' '; while(d<12) if(!filename[c]) break; else str[d++]=filename[c++]; while(d<12) - str[d++]=SP; + str[d++]=' '; str[d]=0; return(str); } diff --git a/src/sbbs3/listfile.cpp b/src/sbbs3/listfile.cpp index f32bd05a13887ed8f51acb694e1398da1f48eecf..fc5b168c1de619bfd7a1cedcfe55a02d39da6db6 100644 --- a/src/sbbs3/listfile.cpp +++ b/src/sbbs3/listfile.cpp @@ -151,7 +151,7 @@ int sbbs_t::listfiles(uint dirnum, char *filespec, int tofile, long mode) FREE((char *)datbuf); return(-1); } for(j=0;j<12 && m<l;j++) - if(j==8) + if(j==8 && ixbbuf[8]>' ') str[j]='.'; else str[j]=ixbbuf[m++]; /* Turns FILENAMEEXT into FILENAME.EXT */ @@ -888,7 +888,7 @@ int sbbs_t::listfileinfo(uint dirnum, char *filespec, long mode) found=-1; break; } for(i=0;i<12 && m<l;i++) - if(i==8) + if(i==8 && ixbbuf[8]>' ') str[i]='.'; else str[i]=ixbbuf[m++]; /* Turns FILENAMEEXT into FILENAME.EXT */