diff --git a/src/sbbs3/sftp.cpp b/src/sbbs3/sftp.cpp
index b348a65a822fe0a2855dcf5b8aed4bc33c284c69..a6a1f13d4e18943e29dbe36ae97e4912410f793b 100644
--- a/src/sbbs3/sftp.cpp
+++ b/src/sbbs3/sftp.cpp
@@ -1656,7 +1656,7 @@ sftp_readdir(sftp_dirhandle_t handle, void *cb_data)
 		copy_path(cwd, pm->sftp_patt);
 		while (static_files[dd->info.rootdir.idx].sftp_patt != nullptr && fn.entries() < MAX_FILES_PER_READDIR) {
 			dd->info.rootdir.idx++;
-			if (dd->info.rootdir.idx >= static_cast<int32_t>(static_files_sz))
+			if (static_cast<size_t>(dd->info.rootdir.idx) >= static_files_sz)
 				break;
 			if (static_files[dd->info.rootdir.idx].sftp_patt == nullptr) {
 				dd->info.rootdir.idx = no_more_files;