mirror of
https://github.com/glfw/glfw.git
synced 2024-11-11 13:03:52 +00:00
Win32 Unicode fixes.
This commit is contained in:
parent
78bc624ba9
commit
db066b4f46
@ -199,7 +199,15 @@ int _glfwPlatformGetVideoModes(_GLFWmonitor* monitor, GLFWvidmode* list, int ma
|
||||
|
||||
for (;;)
|
||||
{
|
||||
if (!EnumDisplaySettings(monitor->Win32.name, deviceModeNum, &deviceMode))
|
||||
BOOL result;
|
||||
WCHAR* wideName = _glfwCreateWideStringFromUTF8(monitor->Win32.name);
|
||||
if (!wideName)
|
||||
break;
|
||||
|
||||
result = EnumDisplaySettings(wideName, deviceModeNum, &deviceMode);
|
||||
free(wideName);
|
||||
|
||||
if (!result)
|
||||
break;
|
||||
|
||||
if (vidModesCount >= maxcount)
|
||||
|
@ -58,21 +58,20 @@ _GLFWmonitor** _glfwCreateMonitor(_GLFWmonitor** current,
|
||||
*current = malloc(sizeof(_GLFWmonitor));
|
||||
memset(*current, 0, sizeof(_GLFWmonitor));
|
||||
|
||||
dc = CreateDC("DISPLAY", monitor->DeviceString, NULL, NULL);
|
||||
dc = CreateDC(L"DISPLAY", monitor->DeviceString, NULL, NULL);
|
||||
|
||||
(*current)->physicalWidth = GetDeviceCaps(dc, HORZSIZE);
|
||||
(*current)->physicalHeight = GetDeviceCaps(dc, VERTSIZE);
|
||||
|
||||
DeleteDC(dc);
|
||||
|
||||
(*current)->name = malloc(strlen(monitor->DeviceName) + 1);
|
||||
memcpy((*current)->name, monitor->DeviceName, strlen(monitor->DeviceName) + 1);
|
||||
(*current)->name[strlen(monitor->DeviceName)] = '\0';
|
||||
(*current)->name = _glfwCreateUTF8FromWideString(monitor->DeviceName);
|
||||
|
||||
(*current)->screenX = setting->dmPosition.x;
|
||||
(*current)->screenY = setting->dmPosition.y;
|
||||
|
||||
memcpy((*current)->Win32.name, adapter->DeviceName, 32);
|
||||
(*current)->Win32.name = _glfwCreateUTF8FromWideString(adapter->DeviceName);
|
||||
|
||||
return &((*current)->next);
|
||||
}
|
||||
|
||||
@ -82,6 +81,7 @@ _GLFWmonitor* _glfwDestroyMonitor(_GLFWmonitor* monitor)
|
||||
|
||||
result = monitor->next;
|
||||
|
||||
free(monitor->Win32.name);
|
||||
free(monitor->name);
|
||||
free(monitor);
|
||||
|
||||
|
@ -219,7 +219,7 @@ typedef struct _GLFWlibraryWin32
|
||||
//------------------------------------------------------------------------
|
||||
typedef struct _GLFWmonitorWin32
|
||||
{
|
||||
char name[32];
|
||||
char* name;
|
||||
|
||||
} _GLFWmonitorWin32;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user