Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 28 Jan 2020 18:53:14 +0000
From:      bugzilla-noreply@freebsd.org
To:        gnome@FreeBSD.org
Subject:   [Bug 243677] www/webkit2-gtk3: disable WPE renderer, unbreak liferea build
Message-ID:  <bug-243677-6497@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D243677

            Bug ID: 243677
           Summary: www/webkit2-gtk3: disable WPE renderer, unbreak
                    liferea build
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Keywords: easy, patch, patch-ready
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: gnome@FreeBSD.org
          Reporter: cmt@freebsd.org

Created attachment 211139
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D211139&action=
=3Dedit
disable WPE renderer, unbreaks liferea

since updating webkit2-gtk3 to 2.26.x (ports r516196) build of net/liferea
fails during dumping of the introspection data (see BROKEN message in ports
r516629).

Testing shows that this problem only exists if webkit has option WAYLAND
enabled (unfortunately, that's the default).
Further digging revealed that that ABORT is raised in
Source/WebKit/UIProcess/gtk/AcceleratedBackingStore.cpp
AcceleratedBackingStore::checkRequirements() when the "display" is neither a
"WAYLAND" or "X11" display. In fact, since (I think)
https://bugs.webkit.org/show_bug.cgi?id=3D184406 creates "WPE" displays as =
the
fallback (if WPE support has been enabled) when no regular X11 display (via=
 GDK
or similar) is available. That's exactly the situation with liferea: during
build in poudriere, there's no $DISPLAY and no way to initialize a "real"
display. That "WPE" fallback display later turns up in
AcceleratedBackingStore::checkRequirements() where it is not handled and ca=
uses
a fallthrough to the Abort. If WPE support hadn't been disabled, webkit wou=
ld
create a X11 "dummy" display as before - and that would cause no problems, =
if
we got there.

Experimentation (filling in a few gaps in the code starting in
AcceleratedBackingStore::checkRequirements()) is a trip down the rabbit hole
(there're multiple missing pieces, I think), and the best I got was segfaul=
ts
from some destructor.

As an alternative, I found cmake switch "USE_WPE_RENDERER" (default on) - w=
hen
turned of, we get rid of the problematic code paths through WPE and liferea=
 can
build again just fine and it's BROKEN flag could be reset. (I'm not sure wh=
at
use case WPE has in webkit-gtk on FreeBSD - surely we can use the GDK/GTK
paths, as that's literally in the package name?)

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-243677-6497>