From 34d2fd14979198dc0fcc07f73581ece9540c4b72 Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Sun, 16 Apr 2017 15:28:59 -0700 Subject: Fix build with libdrm >= 2.4.78 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit drmEventContext has grown by one pointer, so the build fails with an error about a member without initialization. qeglfskmsgbmdevice.cpp:147:5: error: missing initializer for member ‘_drmEventContext::page_flip_handler2’ [-Werror=missing-field-initializers] Change-Id: I0e1a09998253489388abfffd14b6014b1ddc90e1 Reviewed-by: Simon Hausmann --- .../eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp | 10 +++++----- src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp index 2040d6bc0e..5f85e4b0b0 100644 --- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp +++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp @@ -140,11 +140,11 @@ void QEglFSKmsGbmDevice::destroyGlobalCursor() void QEglFSKmsGbmDevice::handleDrmEvent() { - drmEventContext drmEvent = { - DRM_EVENT_CONTEXT_VERSION, - Q_NULLPTR, // vblank handler - pageFlipHandler // page flip handler - }; + drmEventContext drmEvent; + memset(&drmEvent, 0, sizeof(drmEvent)); + drmEvent.version = DRM_EVENT_CONTEXT_VERSION; + drmEvent.vblank_handler = nullptr; + drmEvent.page_flip_handler = pageFlipHandler; drmHandleEvent(fd(), &drmEvent); } diff --git a/src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp b/src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp index 2ca251c4af..c9fbb8281c 100644 --- a/src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp +++ b/src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp @@ -312,11 +312,11 @@ void QLinuxFbDevice::swapBuffers(Output *output) const int fbIdx = output->backFb; while (output->backFb == fbIdx) { - drmEventContext drmEvent = { - DRM_EVENT_CONTEXT_VERSION, - nullptr, - pageFlipHandler - }; + drmEventContext drmEvent; + memset(&drmEvent, 0, sizeof(drmEvent)); + drmEvent.version = DRM_EVENT_CONTEXT_VERSION; + drmEvent.vblank_handler = nullptr; + drmEvent.page_flip_handler = pageFlipHandler; // Blocks until there is something to read on the drm fd // and calls back pageFlipHandler once the flip completes. drmHandleEvent(fd(), &drmEvent); -- cgit v1.2.3