X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Fmodules.c;h=009ade37c14205ce39f4a1299294572817a8ecc5;hb=b2934fe046a55291ae03035a6270db3b32950c8f;hp=c9f3a70a6aee97c083933f944c37c859cf0b542f;hpb=32b42cd8c5cc03945f6e436259ae4c8252462d9b;p=tpg%2Facess2.git diff --git a/Kernel/modules.c b/Kernel/modules.c index c9f3a70a..009ade37 100644 --- a/Kernel/modules.c +++ b/Kernel/modules.c @@ -43,6 +43,7 @@ char **gasBuiltinModuleArgs; /** * \brief Initialises a module * \param Module Pointer to the module header + * \param ArgString Comma separated list of module arguments * \return Zero on success, eModuleErrors or -1 on error * \retval -1 Returned if a dependency fails, or a circular dependency * exists. @@ -349,53 +350,12 @@ int Module_LoadFile(char *Path, char *ArgString) return 0; } - // Check magic number - if(info->Magic != MODULE_MAGIC) - { - Log_Warning("Module", "Module's magic value is invalid (0x%x != 0x%x)", info->Magic, MODULE_MAGIC); - return 0; - } - - // Check Architecture - if(info->Arch != MODULE_ARCH_ID) - { - Log_Warning("Module", "Module is for a different architecture"); - return 0; - } - - #if 1 + // Initialise (and register) if( Module_int_Initialise( info, ArgString ) ) { Binary_Unload(base); return 0; } - #else - // Resolve Dependencies - if( !Module_int_ResolveDeps(info) ) { - Binary_Unload(base); - return 0; - } - - Log_Log("Module", "Initialising %p '%s' v%i.%i...", - info, - info->Name, - info->Version>>8, info->Version & 0xFF - ); - - // Call Initialiser - //if( info->Init( ArgString ) != 0 ) - if( info->Init( NULL ) == 0 ) - { - Binary_Unload(base); - return 0; - } - - // Add to list - LOCK( &glModuleSpinlock ); - info->Next = gLoadedModules; - gLoadedModules = info; - RELEASE( &glModuleSpinlock ); - #endif return 1; }