diff options
author | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2023-03-16 10:44:47 +0200 |
---|---|---|
committer | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2023-03-20 08:10:56 +0200 |
commit | bed46f723c759ce9ffbd467e595deaf001c00499 (patch) | |
tree | ebe12ae22639d3c070f275af93ad0ea7958dfdcd /platform/linuxbsd/freedesktop_portal_desktop.cpp | |
parent | 161d028ae89acb578cfcd4f29bfe9ac205459e8b (diff) | |
download | redot-engine-bed46f723c759ce9ffbd467e595deaf001c00499.tar.gz |
[Linux/BSD] Add dynamically loaded library version checks.
Diffstat (limited to 'platform/linuxbsd/freedesktop_portal_desktop.cpp')
-rw-r--r-- | platform/linuxbsd/freedesktop_portal_desktop.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/platform/linuxbsd/freedesktop_portal_desktop.cpp b/platform/linuxbsd/freedesktop_portal_desktop.cpp index ec1fcf6698..b45b7e676d 100644 --- a/platform/linuxbsd/freedesktop_portal_desktop.cpp +++ b/platform/linuxbsd/freedesktop_portal_desktop.cpp @@ -138,6 +138,17 @@ FreeDesktopPortalDesktop::FreeDesktopPortalDesktop() { #else unsupported = false; #endif + bool ver_ok = false; + int version_major = 0; + int version_minor = 0; + int version_rev = 0; + dbus_get_version(&version_major, &version_minor, &version_rev); + ver_ok = (version_major == 1 && version_minor >= 10) || (version_major > 1); // 1.10.0 + print_verbose(vformat("PortalDesktop: DBus %d.%d.%d detected.", version_major, version_minor, version_rev)); + if (!ver_ok) { + print_verbose("PortalDesktop: Unsupported DBus library version!"); + unsupported = true; + } } #endif // DBUS_ENABLED |