svn commit: r466833 - in head/x11-toolkits/qt5-gui: . files

Adriaan de Groot adridg at FreeBSD.org
Sun Apr 8 21:32:10 UTC 2018


Author: adridg
Date: Sun Apr  8 21:32:09 2018
New Revision: 466833
URL: https://svnweb.freebsd.org/changeset/ports/466833

Log:
  Avoid BGR visuals with Qt5 on i915 (well, all) platforms. Explanation
  is in the patch and PR.
  
  PR:		223638
  Submitted by:	Bengt Ahlgren
  Reported by:	Jason W Bacon
  Reviewed by:	Philipp Engel
  Approved by:	tcberner (mentor, implicit)

Added:
  head/x11-toolkits/qt5-gui/files/patch-src_platformsupport_glxconvenience_qglxconvenience.cpp   (contents, props changed)
Modified:
  head/x11-toolkits/qt5-gui/Makefile

Modified: head/x11-toolkits/qt5-gui/Makefile
==============================================================================
--- head/x11-toolkits/qt5-gui/Makefile	Sun Apr  8 21:11:08 2018	(r466832)
+++ head/x11-toolkits/qt5-gui/Makefile	Sun Apr  8 21:32:09 2018	(r466833)
@@ -2,7 +2,7 @@
 
 PORTNAME=	gui
 DISTVERSION=	${QT5_VERSION}
-PORTREVISION=	3
+PORTREVISION=	4
 CATEGORIES=	x11-toolkits graphics
 PKGNAMEPREFIX=	qt5-
 

Added: head/x11-toolkits/qt5-gui/files/patch-src_platformsupport_glxconvenience_qglxconvenience.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/x11-toolkits/qt5-gui/files/patch-src_platformsupport_glxconvenience_qglxconvenience.cpp	Sun Apr  8 21:32:09 2018	(r466833)
@@ -0,0 +1,17 @@
+Avoid selecting BGR visuals. On Intel i915 systems, selecting one of
+these results in red-blue swapping later in the graphics pipeline.
+PR 223638 has an extensive discussion.
+
+--- src/platformsupport/glxconvenience/qglxconvenience.cpp.orig	2018-01-16 06:53:43 UTC
++++ src/platformsupport/glxconvenience/qglxconvenience.cpp
+@@ -220,6 +220,10 @@ GLXFBConfig qglx_findConfig(Display *dis
+             if (requestedAlpha && actualAlpha != requestedAlpha)
+                 continue;
+ 
++            // avoid BGR visuals due to bugs elsewhere
++            if ((visual->red_mask & 0x1) == 0x1)
++                continue;
++
+             return candidate;
+         }
+     } while (qglx_reduceFormat(&format));


More information about the svn-ports-head mailing list