aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Ava/Ui/Controls/EmbeddedWindow.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Ava/Ui/Controls/EmbeddedWindow.cs')
-rw-r--r--Ryujinx.Ava/Ui/Controls/EmbeddedWindow.cs8
1 files changed, 5 insertions, 3 deletions
diff --git a/Ryujinx.Ava/Ui/Controls/EmbeddedWindow.cs b/Ryujinx.Ava/Ui/Controls/EmbeddedWindow.cs
index 26007591..05b2cc5b 100644
--- a/Ryujinx.Ava/Ui/Controls/EmbeddedWindow.cs
+++ b/Ryujinx.Ava/Ui/Controls/EmbeddedWindow.cs
@@ -125,9 +125,9 @@ namespace Ryujinx.Ava.Ui.Controls
{
cbSize = Marshal.SizeOf<WNDCLASSEX>(),
hInstance = GetModuleHandle(null),
- lpfnWndProc = _wndProcDelegate,
+ lpfnWndProc = Marshal.GetFunctionPointerForDelegate(_wndProcDelegate),
style = ClassStyles.CS_OWNDC,
- lpszClassName = _className,
+ lpszClassName = Marshal.StringToHGlobalUni(_className),
hCursor = LoadCursor(IntPtr.Zero, (IntPtr)Cursors.IDC_ARROW)
};
@@ -148,7 +148,9 @@ namespace Ryujinx.Ava.Ui.Controls
IntPtr.Zero);
WindowHandle = handle;
-
+
+ Marshal.FreeHGlobal(wndClassEx.lpszClassName);
+
return new PlatformHandle(WindowHandle, "HWND");
}