On Fri, Mar 6, 2009 at 6:50 PM, KJK::Hyperion hackbunny@reactos.org wrote:
Jun Koi wrote:
But in fact the next field (CriticalSectionTimeout) starts at 0x70. No matter how big it is, we actually dont care
the size doesn't matter, but the alignment does (which, in the case of long long on Windows, matches its size, i.e. 8). 0x6C is not a multiple of 8, and the smallest multiple of 8 that's higher than 0x6C is 0x70
Now I see the reason.
But my question then is: how to make gcc automatically align LARGER_INTEGER fields on 8 bytes like that?
I write a small test code with the NDK headers, and compile with gcc. The result binary put CriticalSectionTimeout at 0x6C, not at 0x70.
Because ReactOS can be compiled with gcc, I guess there is an option for gcc to do that. But I looked around for a while to no avail.
Anybody please enlighten me?
Thanks, J
Ros-dev mailing list Ros-dev@reactos.org http://www.reactos.org/mailman/listinfo/ros-dev