Index: trunk/i386/boot2/drivers.c =================================================================== --- trunk/i386/boot2/drivers.c (revision 2210) +++ trunk/i386/boot2/drivers.c (revision 2211) @@ -592,7 +592,7 @@ // Make make in the image area. - execute_hook("LoadMatchedModules", module, &length, executableAddr, NULL); + execute_hook("LoadMatchedModules", module, &length, executableAddr, NULL); driverLength = sizeof(DriverInfo) + module->plistLength + length + module->bundlePathLength; driverAddr = AllocateKernelMemory(driverLength); @@ -747,9 +747,8 @@ if (length == -1) return -1; required = XMLGetProperty(moduleDict, kPropOSBundleRequired); - if ( (required == 0) || - (required->type != kTagTypeString) || - !strcmp(required->string, "Safe Boot")) + + if ( (required != NULL) && (required->type == kTagTypeString) && !strcmp(required->string, "Safe Boot")) { XMLFreeTag(moduleDict); return -2;