diff --git a/krfb/main.cpp b/krfb/main.cpp --- a/krfb/main.cpp +++ b/krfb/main.cpp @@ -42,6 +42,17 @@ static bool checkX11Capabilities() { + // QX11Info::display() can still be non-null in wayland, if XWayland is running. + if (!QX11Info::display() || (QApplication::platformName() != QStringLiteral("xcb"))) { + // XTestQueryExtension segfaults under wayland + XWayland. + // exit early and gracefully + KMessageBox::error(nullptr, + i18n("It seems you are not running X11. " + "Wayland is currently not supported yet!"), + i18n("Desktop Sharing Error")); + return false; + } + int bp1, bp2, majorv, minorv; Bool r = XTestQueryExtension(QX11Info::display(), &bp1, &bp2, &majorv, &minorv);