Fix build with libdrm >= 2.4.78

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 <simon.hausmann@qt.io>
bb10
Thiago Macieira 2017-04-16 15:28:59 -07:00 committed by Simon Hausmann
parent 3bea9450e9
commit 34d2fd1497
2 changed files with 10 additions and 10 deletions

View File

@ -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);
}

View File

@ -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);