From 0b7cd870831bc2e1f2c4c951b7d2762b937c5c5f Mon Sep 17 00:00:00 2001 From: Ethan Lee Date: Sun, 1 Sep 2013 16:37:48 -0400 Subject: [PATCH] The union is a separate entity. --- src/SDL2.cs | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/SDL2.cs b/src/SDL2.cs index 6560b4d..1803ebd 100644 --- a/src/SDL2.cs +++ b/src/SDL2.cs @@ -5147,25 +5147,29 @@ namespace SDL2 } [StructLayout(LayoutKind.Explicit)] - public struct SDL_SysWMinfo + public struct INTERNAL_SysWMDriverUnion { [FieldOffset(0)] - public SDL_version version; - [FieldOffset(3)] - public SDL_SYSWM_TYPE subsystem; - [FieldOffset(7)] public INTERNAL_windows_wminfo win; - [FieldOffset(7)] + [FieldOffset(0)] public INTERNAL_x11_wminfo x11; - [FieldOffset(7)] + [FieldOffset(0)] public INTERNAL_directfb_wminfo dfb; - [FieldOffset(7)] + [FieldOffset(0)] public INTERNAL_cocoa_wminfo cocoa; - [FieldOffset(7)] + [FieldOffset(0)] public INTERNAL_uikit_wminfo uikit; // private int dummy; } + [StructLayout(LayoutKind.Sequential)] + public struct SDL_SysWMinfo + { + public SDL_version version; + public SDL_SYSWM_TYPE subsystem; + public INTERNAL_SysWMDriverUnion info; + } + /* window refers to an SDL_Window* */ [DllImport(nativeLibName, CallingConvention = CallingConvention.Cdecl)] public static extern SDL_bool SDL_GetWindowWMInfo(