diff --git a/src/sbbs3/listfile.cpp b/src/sbbs3/listfile.cpp
index c678a85efc5527a3086efee7e469b49ef5b28392..c054d001560436bc351ffee42dbfc3b3e50154c7 100644
--- a/src/sbbs3/listfile.cpp
+++ b/src/sbbs3/listfile.cpp
@@ -138,7 +138,7 @@ int sbbs_t::listfiles(uint dirnum, const char *filespec, FILE* tofile, long mode
 		}
 #endif
 		if(mode&(FL_FINDDESC|FL_EXFIND)) {
-			p = strcasestr(f->desc, filespec);
+			p = (f->desc == NULL) ? NULL : strcasestr(f->desc, filespec);
 			if(!(mode&FL_EXFIND) && p==NULL) {
 				m++;
 				continue;