-/* $Id: driver.c,v 1.7 2002/06/18 07:11:44 ekohl Exp $
+/* $Id: driver.c,v 1.8 2002/06/27 17:49:34 ekohl Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
return(Status);
}
+ ModuleObject = LdrGetModuleObject(DriverServiceName);
+ if (ModuleObject != NULL)
+ {
+ return(STATUS_IMAGE_ALREADY_LOADED);
+ }
+
Status = LdrLoadModule(&FullImagePath, &ModuleObject);
if (!NT_SUCCESS(Status))
{
-/* $Id: loader.c,v 1.113 2002/06/16 11:44:34 ekohl Exp $
+/* $Id: loader.c,v 1.114 2002/06/27 17:52:32 ekohl Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
PMODULE_OBJECT ModuleObject;
NTSTATUS Status;
- Status = LdrLoadModule(DriverName, &ModuleObject);
- if (!NT_SUCCESS(Status))
+ ModuleObject = LdrGetModuleObject(DriverName);
+ if (ModuleObject == NULL)
{
- return(Status);
+ Status = LdrLoadModule(DriverName, &ModuleObject);
+ if (!NT_SUCCESS(Status))
+ {
+ return(Status);
+ }
}
if (ModuleBase)
PMODULE_OBJECT ModuleObject;
NTSTATUS Status;
+ ModuleObject = LdrGetModuleObject(ModuleName);
+ if (ModuleObject != NULL)
+ {
+ return(STATUS_IMAGE_ALREADY_LOADED);
+ }
+
Status = LdrLoadModule(ModuleName, &ModuleObject);
if (!NT_SUCCESS(Status))
{
*ModuleObject = NULL;
- /* Check for module already loaded */
- Module = LdrGetModuleObject(Filename);
- if (Module != NULL)
- {
- *ModuleObject = Module;
- return(STATUS_SUCCESS);
- }
-
DPRINT("Loading Module %wZ...\n", Filename);
/* Open the Module */
KeReleaseSpinLock(&ModuleListLock, Irql);
- CPRINT("LdrpGetModuleObject: Failed to find module %wZ\n", ModuleName);
+ DPRINT("Could not find module '%wZ'\n", ModuleName);
return(NULL);
}
LibraryModuleObject = LdrGetModuleObject(&ModuleName);
if (LibraryModuleObject == NULL)
{
- DPRINT("Module '%wZ' not loaded\n", &ModuleName);
+ CPRINT("Module '%wZ' not loaded yet\n", &ModuleName);
wcscpy(NameBuffer, L"\\SystemRoot\\system32\\drivers\\");
wcscat(NameBuffer, ModuleName.Buffer);
RtlInitUnicodeString(&NameString, NameBuffer);
FunctionList[Hint - ExportDir->Base]);
}
- if (ExportAddress == 0)
+ if (ExportAddress == NULL)
{
CPRINT("Export not found for %d:%s\n",
Hint,