uint32_t i;
err = xglCreateInstance(&app, NULL, &demo->inst);
- assert(!err);
+ if (err == XGL_ERROR_INCOMPATIBLE_DRIVER) {
+ printf("Cannot find a compatible Vulkan installable client driver "
+ "(ICD).\nExiting ...\n");
+ fflush(stdout);
+ exit(1);
+ } else {
+ assert(!err);
+ }
err = xglEnumerateGpus(demo->inst, 1, &gpu_count, &demo->gpu);
assert(!err && gpu_count == 1);
int scr;
demo->connection = xcb_connect(NULL, &scr);
+ if (demo->connection == NULL) {
+ printf("Cannot find a compatible Vulkan installable client driver "
+ "(ICD).\nExiting ...\n");
+ fflush(stdout);
+ exit(1);
+ }
setup = xcb_get_setup(demo->connection);
iter = xcb_setup_roots_iterator(setup);
uint32_t i;
err = xglCreateInstance(&app, NULL, &demo->inst);
- assert(!err);
+ if (err == XGL_ERROR_INCOMPATIBLE_DRIVER) {
+ printf("Cannot find a compatible Vulkan installable client driver "
+ "(ICD).\nExiting ...\n");
+ fflush(stdout);
+ exit(1);
+ } else {
+ assert(!err);
+ }
err = xglEnumerateGpus(demo->inst, 1, &gpu_count, &demo->gpu);
assert(!err && gpu_count == 1);
int scr;
demo->connection = xcb_connect(NULL, &scr);
+ if (demo->connection == NULL) {
+ printf("Cannot find a compatible Vulkan installable client driver "
+ "(ICD).\nExiting ...\n");
+ fflush(stdout);
+ exit(1);
+ }
setup = xcb_get_setup(demo->connection);
iter = xcb_setup_roots_iterator(setup);
XGL_RESULT err;
err = xglCreateInstance(&app_info, NULL, &inst);
- if (err)
+ if (err == XGL_ERROR_INCOMPATIBLE_DRIVER) {
+ printf("Cannot find a compatible Vulkan installable client driver "
+ "(ICD).\nExiting ...\n");
+ fflush(stdout);
+ exit(1);
+ } else if (err) {
ERR_EXIT(err);
+ }
err = xglEnumerateGpus(inst, MAX_GPUS, &gpu_count, objs);
if (err)
ERR_EXIT(err);