ioq3/code/sys
Zack Middleton 10a45cbdc1 Don't list mod directories at Windows drive root
The mod list on Windows would search the root of the drive if
fs_basepath, fs_homepath, fs_steampath, or fs_gogpath are blank ("")
(which is usually the case).

The issue is in the low-level Sys_ListFiles() but it only affects the
mod menu, on Windows. It cannot be abused by console commands to
list system files outside of the virtual filesystem.

---

If a directory at the root of the drive of the working directory
contained a pk3 file, the directory was listed in the mods menu. The
virtual filesystem doesn't add blank directory names to the search path
so it cannot load mods from the drive root. (Unless of course you set a
fs_*path cvar to "C:\".)

Sys_ListFiles() with blank directory caused Windows to use "\*" for the
search path and "\" prefix means root of drive. Unix opendir("") failed
so nothing was listed for blank directory.

Sys_ListFilteredFiles() with blank directory _and_ specifying subdirs
could access any directory (on Windows and Unix-like) but no code uses
this or makes it accessible.

These functions are only used for initializing the virtual filesystem
and listing mods. They are not accessible by anything else such as a
console command. Only the mods menu, on Windows, is affected.
2023-07-06 05:10:06 -04:00
..
con_log.c Fix reading crash log when log wraps around buffer 2017-10-08 07:19:07 -05:00
con_passive.c * Add con_log.c to log all console output 2007-11-30 18:32:52 +00:00
con_tty.c Remove CON_FlushIn function and where STDIN needs flushing, use tcflush POSIX function 2018-03-14 21:43:56 +00:00
con_win32.c Add arrow key support for win32 console 2015-01-26 02:39:59 -06:00
sys_autoupdater.c Fixed comment typo: s/until/under 2017-06-02 11:28:33 -04:00
sys_loadlib.h Don't search system directories for renderer lib 2011-08-01 09:33:48 +00:00
sys_local.h Fix macOS client/server failing to start from terminal 2023-06-11 11:05:13 -04:00
sys_main.c Fix macOS client/server failing to start from terminal 2023-06-11 11:05:13 -04:00
sys_osx.m Fix macOS client/server failing to start from terminal 2023-06-11 11:05:13 -04:00
sys_unix.c Don't list mod directories at Windows drive root 2023-07-06 05:10:06 -04:00
sys_win32.c Don't list mod directories at Windows drive root 2023-07-06 05:10:06 -04:00
win_manifest.xml Disable DPI scaling on Windows 2017-09-07 21:17:44 -05:00
win_resource.h * Merge unified-sdl to trunk 2007-09-05 18:17:46 +00:00
win_resource.rc Add Windows application manifest 2017-09-07 21:04:52 -05:00