[PATCH] include/ddk: Fix memory layout of IRP and IO_STACK_LOCATION in wine64.
Rafal H
rafalh92 at outlook.com
Sun Nov 22 15:22:27 CST 2015
Yes, I must agree. I realized it after submitting patch and testing if
sizeof(IO_STACK_LOCATION) has changed for 32 bit (it did). I'll make new
patch.
W dniu 22.11.2015 o 22:18, Nikolay Sivov pisze:
> On 22.11.2015 23:11, Rafał Harabień wrote:
>> Fixes https://bugs.winehq.org/show_bug.cgi?id=39648
>>
>> Signed-off-by: Rafał Harabień <rafalh1992 at o2.pl>
>> ---
>> include/ddk/wdm.h | 4 ----
>> 1 file changed, 4 deletions(-)
>>
>> diff --git a/include/ddk/wdm.h b/include/ddk/wdm.h
>> index 0c51527..63baed2 100644
>> --- a/include/ddk/wdm.h
>> +++ b/include/ddk/wdm.h
>> @@ -400,7 +400,6 @@ typedef struct _KAPC {
>> BOOLEAN Inserted;
>> } KAPC, *PKAPC, *RESTRICTED_POINTER PRKAPC;
>>
>> -#include <pshpack1.h>
>> typedef struct _IRP {
>> CSHORT Type;
>> USHORT Size;
>> @@ -456,7 +455,6 @@ typedef struct _IRP {
>> } Tail;
>> } IRP;
>> typedef struct _IRP *PIRP;
>> -#include <poppack.h>
>
> This one looks fine.
>
>>
>> typedef VOID (WINAPI *PINTERFACE_REFERENCE)(
>> PVOID Context);
>> @@ -833,7 +831,6 @@ typedef NTSTATUS (WINAPI *PIO_COMPLETION_ROUTINE)(
>> #define SL_INVOKE_ON_SUCCESS 0x40
>> #define SL_INVOKE_ON_ERROR 0x80
>>
>> -#include <pshpack1.h>
>> typedef struct _IO_STACK_LOCATION {
>> UCHAR MajorFunction;
>> UCHAR MinorFunction;
>> @@ -974,7 +971,6 @@ typedef struct _IO_STACK_LOCATION {
>> PIO_COMPLETION_ROUTINE CompletionRoutine;
>> PVOID Context;
>> } IO_STACK_LOCATION, *PIO_STACK_LOCATION;
>> -#include <poppack.h>
>
> This one doesn't - according to Win10 DDK, it should use pshpack4 for
> i386 case, or to be precise for platforms that are not AMD64, ARM or
> ARM64.
>
>>
>> /* MDL definitions */
>>
>>
>
More information about the wine-devel
mailing list