Skip to content
This repository has been archived by the owner on Nov 1, 2021. It is now read-only.

render: fix EGL extensions not loaded #1956

Merged
merged 1 commit into from Dec 21, 2019
Merged

Conversation

emersion
Copy link
Member

@emersion emersion commented Dec 20, 2019

Some extensions are only advertised by the EGL implementation with a
non-zero EGLDisplay. That's the case when the extension can only be
enabled when the hardware/driver supports it for instance.

Instead of checking for all extensions without a display, check only for
EGL_EXT_platform_base and EGL_KHR_debug which are used before
eglGetDisplay. Check for all other extensions when we have a display.

Closes: #1955
Closes: swaywm/sway#4828

@kchibisov
Copy link
Contributor

Seems like it's working fine. At least the beginning of the debug logs from sway are ~identical now.

log after your patch.
sway_patched.log

@ddevault
Copy link
Member

That arch failure is weird.

@emersion
Copy link
Member Author

emersion commented Dec 20, 2019

It's an arch packaging issue:

> export PKG_CONFIG_DEBUG_SPEW=1
> pkg-config x11-xcb
Package xproto was not found in the pkg-config search path.
Perhaps you should add the directory containing `xproto.pc'
to the PKG_CONFIG_PATH environment variable
Package 'xproto', required by 'x11', not found
Package 'kbproto', required by 'x11', not found

@emersion
Copy link
Member Author

Reported here: https://bugs.archlinux.org/task/64914

@J0nnyMak0
Copy link
Contributor

I can confirm that this branch fixes swaywm/sway#4828

@ppascher
Copy link

This also fixes vulkan not working since commit 515679e. Various extensions were not detected, swapchain could not be created (steam, vkcube).

@ddevault
Copy link
Member

Can you rebase this?

Some extensions are only advertised by the EGL implementation with a
non-zero EGLDisplay. That's the case when the extension can only be
enabled when the hardware/driver supports it for instance.

Instead of checking for all extensions without a display, check only for
EGL_EXT_platform_base and EGL_KHR_debug which are used before
eglGetDisplay. Check for all other extensions when we have a display.

Closes: swaywm#1955
@emersion
Copy link
Member Author

Done

@ddevault ddevault merged commit 01818ad into swaywm:master Dec 21, 2019
@ddevault
Copy link
Member

Thanks!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
5 participants