diff options
author | sL1pKn07 | 2018-05-27 21:10:50 +0200 |
---|---|---|
committer | sL1pKn07 | 2018-05-27 21:14:55 +0200 |
commit | 6a6f8d9e6796a648d00bf7d6c8a0f1ad779f5549 (patch) | |
tree | 92f955c458d7347295d2cf0c7db4fedfce63965f /fallback-x.patch | |
parent | a27cb58379c282df865abfbd4b45b523b7e0324b (diff) | |
download | aur-6a6f8d9e6796a648d00bf7d6c8a0f1ad779f5549.tar.gz |
update patch url. rebuild is not needed
Diffstat (limited to 'fallback-x.patch')
-rw-r--r-- | fallback-x.patch | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/fallback-x.patch b/fallback-x.patch new file mode 100644 index 000000000000..7015eac732f1 --- /dev/null +++ b/fallback-x.patch @@ -0,0 +1,49 @@ +diff -urN libva-vdpau-driver-0.7.4/src/vdpau_driver.c libva-vdpau-driver-0.7.4.chromium/src/vdpau_driver.c +--- libva-vdpau-driver-0.7.4/src/vdpau_driver.c 2012-10-05 16:02:58.000000000 +0100 ++++ libva-vdpau-driver-0.7.4.chromium/src/vdpau_driver.c 2016-10-05 18:47:12.937566583 +0100 +@@ -174,7 +174,7 @@ + } + vdpau_gate_exit(driver_data); + +- if (driver_data->vdp_dpy) { ++ if ((!driver_data->x_fallback) && driver_data->vdp_dpy) { + XCloseDisplay(driver_data->vdp_dpy); + driver_data->vdp_dpy = NULL; + } +@@ -187,9 +187,14 @@ + /* Create a dedicated X11 display for VDPAU purposes */ + const char * const x11_dpy_name = XDisplayString(driver_data->x11_dpy); + driver_data->vdp_dpy = XOpenDisplay(x11_dpy_name); +- if (!driver_data->vdp_dpy) +- return VA_STATUS_ERROR_UNKNOWN; +- ++ /* Fallback to existing X11 display */ ++ driver_data->x_fallback = false; ++ if (!driver_data->vdp_dpy) { ++ driver_data->x_fallback = true; ++ driver_data->vdp_dpy = driver_data->x11_dpy; ++ printf("Failed to create dedicated X11 display!\n"); ++ } ++ + VdpStatus vdp_status; + driver_data->vdp_device = VDP_INVALID_HANDLE; + vdp_status = vdp_device_create_x11( +diff -urN libva-vdpau-driver-0.7.4/src/vdpau_driver.h libva-vdpau-driver-0.7.4.chromium/src/vdpau_driver.h +--- libva-vdpau-driver-0.7.4/src/vdpau_driver.h 2012-10-05 16:02:58.000000000 +0100 ++++ libva-vdpau-driver-0.7.4.chromium/src/vdpau_driver.h 2016-10-05 18:48:33.701593155 +0100 +@@ -21,6 +21,7 @@ + #ifndef VDPAU_DRIVER_H + #define VDPAU_DRIVER_H + ++#include <stdbool.h> + #include <va/va_backend.h> + #include "vaapi_compat.h" + #include "vdpau_gate.h" +@@ -100,6 +101,7 @@ + uint64_t va_display_attrs_mtime[VDPAU_MAX_DISPLAY_ATTRIBUTES]; + unsigned int va_display_attrs_count; + char va_vendor[256]; ++ bool x_fallback; + }; + + typedef struct object_config *object_config_p; |