[NTOSKRNL]: Forcefully set IMAGE_DLLCHARACTERISTICS_NO_ISOLATION on all images. See comment for more information. Windows' kernel32.dll now beautifully loads to the ReactOS winlogon screen (which nobody should ever see -- it's being shown because RtlDefaultNpAcl is not implemented in ReactOS, and thus all named pipes die (SCM, etc...)

svn path=/trunk/; revision=59909
This commit is contained in:
Alex Ionescu 2013-08-30 19:54:44 +00:00
parent 8ee47fd2d9
commit 2e11e06309

View file

@ -437,8 +437,23 @@ l_ReadHeaderFromFile:
ImageSectionObject->ImageInformation.LoaderFlags = piohOptHeader->LoaderFlags;
if (RTL_CONTAINS_FIELD(piohOptHeader, cbOptHeaderSize, DllCharacteristics))
{
ImageSectionObject->ImageInformation.DllCharacteristics = piohOptHeader->DllCharacteristics;
/*
* Since we don't really implement SxS yet and LD doesn't supoprt /ALLOWISOLATION:NO, hard-code
* this flag here, which will prevent the loader and other code from doing any .manifest or SxS
* magic to any binary.
*
* This will break applications that depend on SxS when running with real Windows Kernel32/SxS/etc
* but honestly that's not tested. It will also break them when running no ReactOS once we implement
* the SxS support -- at which point, duh, this should be removed.
*
* But right now, any app depending on SxS is already broken anyway, so this flag only helps.
*/
ImageSectionObject->ImageInformation.DllCharacteristics |= IMAGE_DLLCHARACTERISTICS_NO_ISOLATION;
}
break;
}