X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=radiant%2Fmainframe.cpp;h=433767d547c705bb2a04d0b521a9a4db820aa493;hb=074614f03092ddf3ddaae4d945f4570a4435130d;hp=05fdc2b78eae7221499f8d0e5844b84478ce167b;hpb=2d8381a1be1e00bfcc0bad5b53371875f8dd4956;p=xonotic%2Fnetradiant.git diff --git a/radiant/mainframe.cpp b/radiant/mainframe.cpp index 05fdc2b7..433767d5 100644 --- a/radiant/mainframe.cpp +++ b/radiant/mainframe.cpp @@ -521,22 +521,6 @@ void gamemode_set( const char* gamemode ){ #include "os/dir.h" -class CLoadModule -{ -const char* m_path; -public: -CLoadModule( const char* path ) : m_path( path ){ -} -void operator()( const char* name ) const { - char fullname[1024]; - ASSERT_MESSAGE( strlen( m_path ) + strlen( name ) < 1024, "" ); - strcpy( fullname, m_path ); - strcat( fullname, name ); - globalOutputStream() << "Found '" << fullname << "'\n"; - GlobalModuleServer_loadModule( fullname ); -} -}; - const char* const c_library_extension = #if defined( CMAKE_SHARED_MODULE_SUFFIX ) CMAKE_SHARED_MODULE_SUFFIX @@ -550,7 +534,14 @@ const char* const c_library_extension = ; void Radiant_loadModules( const char* path ){ - Directory_forEach( path, MatchFileExtension( c_library_extension, CLoadModule( path ) ) ); + Directory_forEach(path, matchFileExtension(c_library_extension, [&](const char *name) { + char fullname[1024]; + ASSERT_MESSAGE(strlen(path) + strlen(name) < 1024, ""); + strcpy(fullname, path); + strcat(fullname, name); + globalOutputStream() << "Found '" << fullname << "'\n"; + GlobalModuleServer_loadModule(fullname); + })); } void Radiant_loadModulesFromRoot( const char* directory ){