[ros-dev] [ros-diffs] [dreimer] 59238: logical 'and' applied to non-boolean constant Reviewed by Thomas Faber and asked for commit, so blame him! CORE-7207 #resolve #comment Fixed!

Timo Kreuzer timo.kreuzer at web.de
Mon Jun 17 00:10:32 UTC 2013


That is still not correct.  MM_DECOMMIT (which should be aliased as 
MM_GUARDPAGE) is 0x10.
BUT, this is only a guardpage, if 0x8, aka MM_NOCACHE is not set.
it's like this:
Protection & 0x18 ==
0x00: normal
0x08: uncached
0x10: guard page
0x18: write combined

see http://www.reactos.org/wiki/Techwiki:Memory_Protection_constants

Am 16.06.2013 22:37, schrieb dreimer at svn.reactos.org:
> Author: dreimer
> Date: Sun Jun 16 20:37:04 2013
> New Revision: 59238
>
> URL: http://svn.reactos.org/svn/reactos?rev=59238&view=rev
> Log:
> logical 'and' applied to non-boolean constant
> Reviewed by Thomas Faber and asked for commit, so blame him!
> CORE-7207 #resolve #comment Fixed!
>
> Modified:
>      trunk/reactos/ntoskrnl/mm/ARM3/vadnode.c
>
> Modified: trunk/reactos/ntoskrnl/mm/ARM3/vadnode.c
> URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/ARM3/vadnode.c?rev=59238&r1=59237&r2=59238&view=diff
> ==============================================================================
> --- trunk/reactos/ntoskrnl/mm/ARM3/vadnode.c	[iso-8859-1] (original)
> +++ trunk/reactos/ntoskrnl/mm/ARM3/vadnode.c	[iso-8859-1] Sun Jun 16 20:37:04 2013
> @@ -647,7 +647,7 @@
>               (EndAddress >= ((PMMVAD_LONG)Vad)->u3.Secured.StartVpn))
>           {
>               /* Guard page? */
> -            if (ProtectionMask && MM_DECOMMIT)
> +            if (ProtectionMask & MM_DECOMMIT)
>               {
>                   DPRINT1("Not allowed to change protection on guard page!\n");
>                   return STATUS_INVALID_PAGE_PROTECTION;
>
>
>




More information about the Ros-dev mailing list