diff --git a/neo/framework/CmdSystem.h b/neo/framework/CmdSystem.h index 4de1528f..04688e67 100644 --- a/neo/framework/CmdSystem.h +++ b/neo/framework/CmdSystem.h @@ -191,6 +191,7 @@ public: static void ArgCompletion_Decl( const idCmdArgs& args, void( *callback )( const char* s ) ); static void ArgCompletion_FileName( const idCmdArgs& args, void( *callback )( const char* s ) ); static void ArgCompletion_MapName( const idCmdArgs& args, void( *callback )( const char* s ) ); + static void ArgCompletion_MapNameNoJson( const idCmdArgs& args, void( *callback )( const char* s ) ); static void ArgCompletion_ModelName( const idCmdArgs& args, void( *callback )( const char* s ) ); static void ArgCompletion_SoundName( const idCmdArgs& args, void( *callback )( const char* s ) ); static void ArgCompletion_ImageName( const idCmdArgs& args, void( *callback )( const char* s ) ); @@ -236,6 +237,11 @@ ID_INLINE void idCmdSystem::ArgCompletion_FileName( const idCmdArgs& args, void( } ID_INLINE void idCmdSystem::ArgCompletion_MapName( const idCmdArgs& args, void( *callback )( const char* s ) ) +{ + cmdSystem->ArgCompletion_FolderExtension( args, callback, "maps/", true, ".map", ".json", NULL ); +} + +ID_INLINE void idCmdSystem::ArgCompletion_MapNameNoJson( const idCmdArgs& args, void( *callback )( const char* s ) ) { cmdSystem->ArgCompletion_FolderExtension( args, callback, "maps/", true, ".map", NULL ); } diff --git a/neo/framework/Common_mapconvert.cpp b/neo/framework/Common_mapconvert.cpp index 4454e011..3e4c4e01 100644 --- a/neo/framework/Common_mapconvert.cpp +++ b/neo/framework/Common_mapconvert.cpp @@ -584,7 +584,7 @@ CONSOLE_COMMAND( exportMapToOBJ, "Convert .map file to .obj/.mtl ", idCmdSystem: -CONSOLE_COMMAND( convertMap, "Convert .map file to new map format with polygons instead of brushes ", idCmdSystem::ArgCompletion_MapName ) +CONSOLE_COMMAND( convertMap, "Convert .map file to new map format with polygons instead of brushes ", idCmdSystem::ArgCompletion_MapNameNoJson ) { common->SetRefreshOnPrint( true ); @@ -627,7 +627,7 @@ CONSOLE_COMMAND( convertMap, "Convert .map file to new map format with polygons } -CONSOLE_COMMAND( convertMapToJSON, "Convert .map file to new map format with polygons instead of brushes ", idCmdSystem::ArgCompletion_MapName ) +CONSOLE_COMMAND( convertMapToJSON, "Convert .map file to new map format with polygons instead of brushes ", idCmdSystem::ArgCompletion_MapNameNoJson ) { common->SetRefreshOnPrint( true ); diff --git a/neo/framework/FileSystem.cpp b/neo/framework/FileSystem.cpp index fe870963..20c7d7d0 100644 --- a/neo/framework/FileSystem.cpp +++ b/neo/framework/FileSystem.cpp @@ -2271,7 +2271,7 @@ int idFileSystemLocal::GetFileList( const char* relativePath, const idStrList& e } // ensure we have a path, and not just a filename containing the path - if( rt.filename[ pathLength ] == '\0' || rt.filename[pathLength - 1] != '/' ) + if( rt.filename[ pathLength ] == '\0' || ( pathLength && rt.filename[pathLength - 1] != '/' ) ) { continue; }