Merge branch 'for-main' into 'main'
testsuite: Don't assert more than guaranteed See merge request GNOME/gtk!7763
This commit is contained in:
@@ -1405,6 +1405,7 @@ gdk_display_create_vulkan_device (GdkDisplay *display,
|
|||||||
{
|
{
|
||||||
G_GNUC_UNUSED gint64 start_time = GDK_PROFILER_CURRENT_TIME;
|
G_GNUC_UNUSED gint64 start_time = GDK_PROFILER_CURRENT_TIME;
|
||||||
uint32_t i, j, k;
|
uint32_t i, j, k;
|
||||||
|
const char *env_var = "GDK_VULKAN_DEVICE";
|
||||||
const char *override;
|
const char *override;
|
||||||
gboolean list_devices;
|
gboolean list_devices;
|
||||||
int first, last;
|
int first, last;
|
||||||
@@ -1435,26 +1436,35 @@ gdk_display_create_vulkan_device (GdkDisplay *display,
|
|||||||
if (skip_features & GDK_VULKAN_FEATURE_YCBCR)
|
if (skip_features & GDK_VULKAN_FEATURE_YCBCR)
|
||||||
skip_features |= GDK_VULKAN_FEATURE_DMABUF;
|
skip_features |= GDK_VULKAN_FEATURE_DMABUF;
|
||||||
|
|
||||||
override = g_getenv ("GDK_VULKAN_DEVICE");
|
override = g_getenv (env_var);
|
||||||
list_devices = FALSE;
|
list_devices = FALSE;
|
||||||
if (override)
|
if (override)
|
||||||
{
|
{
|
||||||
if (g_strcmp0 (override, "list") == 0)
|
if (g_strcmp0 (override, "help") == 0)
|
||||||
|
{
|
||||||
|
fprintf (stderr,
|
||||||
|
"%s overrides the choice of Vulkan device.\n\n", env_var);
|
||||||
|
fprintf (stderr, "Supported %s values:\n", env_var);
|
||||||
|
fprintf (stderr, " N Use the N-th device\n");
|
||||||
|
fprintf (stderr, " list List available devices\n");
|
||||||
|
fprintf (stderr, " help Print this help\n");
|
||||||
|
}
|
||||||
|
else if (g_strcmp0 (override, "list") == 0)
|
||||||
list_devices = TRUE;
|
list_devices = TRUE;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gint64 device_idx;
|
guint64 device_idx;
|
||||||
GError *error2 = NULL;
|
GError *error2 = NULL;
|
||||||
|
|
||||||
if (!g_ascii_string_to_signed (override, 10, 0, G_MAXINT, &device_idx, &error2))
|
if (!g_ascii_string_to_unsigned (override, 10, 0, G_MAXINT, &device_idx, &error2))
|
||||||
{
|
{
|
||||||
g_warning ("Failed to parse %s: %s", "GDK_VULKAN_DEVICE", error2->message);
|
fprintf (stderr, "Failed to parse %s: %s\n", env_var, error2->message);
|
||||||
|
fprintf (stderr, "Try %s=help\n", env_var);
|
||||||
g_error_free (error2);
|
g_error_free (error2);
|
||||||
device_idx = -1;
|
device_idx = -1;
|
||||||
}
|
}
|
||||||
|
else if (device_idx < 0 || device_idx >= n_devices)
|
||||||
if (device_idx < 0 || device_idx >= n_devices)
|
fprintf (stderr, "%s value out of range, ignoring\n", env_var);
|
||||||
g_warning ("%s value out of range, ignoring", "GDK_VULKAN_DEVICE");
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
first = device_idx;
|
first = device_idx;
|
||||||
|
|||||||
@@ -74,7 +74,6 @@ test_default_seat (void)
|
|||||||
g_assert_true (gdk_device_get_display (pointer0) == display);
|
g_assert_true (gdk_device_get_display (pointer0) == display);
|
||||||
g_assert_true (gdk_device_get_seat (pointer0) == seat0);
|
g_assert_true (gdk_device_get_seat (pointer0) == seat0);
|
||||||
|
|
||||||
g_assert_nonnull (physical_devices);
|
|
||||||
for (l = physical_devices; l; l = l->next)
|
for (l = physical_devices; l; l = l->next)
|
||||||
{
|
{
|
||||||
device = l->data;
|
device = l->data;
|
||||||
@@ -99,7 +98,6 @@ test_default_seat (void)
|
|||||||
g_assert_true (gdk_device_get_seat (keyboard0) == seat0);
|
g_assert_true (gdk_device_get_seat (keyboard0) == seat0);
|
||||||
g_assert_true (gdk_device_get_source (keyboard0) == GDK_SOURCE_KEYBOARD);
|
g_assert_true (gdk_device_get_source (keyboard0) == GDK_SOURCE_KEYBOARD);
|
||||||
|
|
||||||
g_assert_nonnull (physical_devices);
|
|
||||||
for (l = physical_devices; l; l = l->next)
|
for (l = physical_devices; l; l = l->next)
|
||||||
{
|
{
|
||||||
device = l->data;
|
device = l->data;
|
||||||
|
|||||||
Reference in New Issue
Block a user